再起動したいApacheサーバーがシャットダウンしたとき。だから私は以下を使って以下のスクリプトを書いた。カールそしてもしリング
curl example.com
si='curl example.com'
if test si !=0
then
service apache2 restart
fi
~
再起動を楽しみにしています。Apacheサイトがダウンしている場合
ただし、次のエラーが返されます。
curl:(7)example.comポート80に接続できません:接続が拒否されました。
autostart.sh:行8:テスト:si:単項演算子が必要です。
答え1
curl
curl
デフォルトは、サーバーが応答しない場合は永遠に待機しているようですが、やむを得ず使用する必要がある場合は、--max-time
パラメーターと一緒に使用してください。これを行うには、1行のスクリプトで十分です。
curl --max-time 15 example.com || sudo service apache2 restart
vahaitech.comがあなたのサイトであると仮定し、カールが15秒以内にダウンロードを完了しない場合は、apache2サービスを再起動してください。
答え2
たとえば、前のコマンド終了ステータスフラグを探しているとします。
#!/bin/bash
curl example.com
if (( $? > 0 )); then
sudo service apache2 restart
fi
これはカール終了状態をチェックし、ゼロでない場合はapache2サーバーを再起動します。
何も表示されないように、これらのコマンドの出力を抑制するには、次を追加します。
&>/dev/null
各コマンドの後