Centosサーバーの特定のポートで実行されているプロセスを保持し続けるクローンジョブを設定しようとしています。
前の議論に基づいて、cronジョブで呼び出す次のスクリプトを考えました。
#!/bin/bash
opt="$(lsof -i tcp:9090| awk 'NR!=1 {print $2}')"
echo $opt
if [ -z "$opt" ]
then
# nohup npm start & 1>/dev/null 2>/dev/null &
echo "App Restarted" | mail -s "App is restarted" "myemail"
fi
これは変数出力の値に関係なくトリガされ、ここで何が間違っているかはわかりません。
答え1
#assign output of a command to a variable
output="$(command)"
#test variable to see if empty
if [ -z "$output" ]
then
#do something
a_command
fi