以下に示すシェルスクリプトを作成しました
unicorn_cnt=$(ps -ef | grep -v grep | grep -c unicorn)
if (( $unicorn_cnt == 0 )); then
echo "Unicorn Stopped" | mail -s "Alert - Unicorn" someone@somedomin.com
fi
delayed_job_cnt=$(ps -ef | grep -v grep | grep -c delayed_job)
if (( $delayed_job_cnt == 0 )); then
echo "Delayed Job Stopped" | mail -s "Alert - Unicorn" someone@somedomin.com
fi
rake_cnt=$(ps -ef | grep -v grep | grep -c rake)
if (( $rake_cnt == 0 )); then
echo "Convertion Stopped" | mail -s "Alert - Unicorn" someone@somedomin.com
fi
これは、プロセスが実行されているかどうかを確認するためのもので、そうでない場合は警告メールを送信します。私はシェルスクリプトにあまり詳しくありません。実行中に次のエラーが表示されます。
process.sh: 3: process.sh: 2: not found
process.sh: 7: process.sh: 0: not found
process.sh: 11: process.sh: 0: not found
私が部分的に理解しているいくつかの調査から、これは変数を作成する際のスペースの問題が原因です。わからない。そして、 sedやreadなどのいくつかのソリューションを使用しようとしました。しかし、それでもエラーが表示されます。誰でも私を助けることができますか?
ありがとうございます。それでは、お元気で