Bash
使用 curl 和 shell 腳本重新啟動 apache
我想重新啟動apache伺服器,當它關閉時。因此,我在下面使用curl和if循環編寫了一個腳本
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:預期一元運算符
curl
如果伺服器沒有響應,預設情況下似乎會永遠等待,所以如果必須使用curl
,請將其與--max-time
參數一起使用。1 行腳本足以完成此任務:curl --max-time 15 example.com || sudo service apache2 restart
假設 vahaitech.com 是您的站點,如果 curl 沒有在 15 秒內完成下載,則重新啟動 apache2 服務。
例如,我認為您正在尋找上一個命令退出狀態標誌;
#!/bin/bash curl example.com if (( $? > 0 )); then sudo service apache2 restart fi
這將查看 curls 退出狀態,如果它不是 0,它將重新啟動 apache2 伺服器
如果您想抑制這些命令的輸出使其不顯示任何內容,請務必添加
&>/dev/null
每個命令之後