Linux定時重啟程式

2022-09-19 07:57:08 字數 828 閱讀 5640

最近想要配置乙個定時任務來重啟乙個golang程式,因為是在伺服器上,所以決定用linux的crontab來設定。

crontab是用來定期執行程式的命令。當安裝完成作業系統之後,預設便會啟動此任務排程命令。

crond 命令每分鐘會定期檢查是否有要執行的工作,如果有要執行的工作便會自動執行該工作。

具體用法網上很多,這裡不再贅述。

對linux稍微有所了解便可知一般用kill pid來結束特定程序,然後可能會出現類似下面的提示資訊:

/home/user/script: line ***: 93290 killed
如果我一次行kill多個程序,很可能因為這個輸出而沒能成功,因此需要去除。考慮如下指令碼:

#!/bin/bash

for pid in $(pgrep -f go);

do 2>/dev/null

done

cd /root/lcid-go

nohup /usr/local/go/bin/go run ./main.go > /dev/null 2>&1 &

其中$(pgrep -f go)找出所有go程式,當然能換成其他的,只要找出所有想要結束的程序的pid。最後一行是重新啟動這個go程式。

此指令碼儲存為~/restart.sh

最後只需crontab -e,然後新增下面一行即可,設定為每天2:15執行。

15 2 * * * cd ~ && ./restart.sh

VC , 重啟程式

tchar pbuf max path getmodulefilename null,pbuf,max path startupinfo startupinfo process information proc info memset startupinfo,0,sizeof startupinfo...

linux下通過指令碼實現自動重啟程式

出處不詳,網上摘錄。無論什麼程式都不可能完美無缺,理論上,任何程式都有core dump的一天,正式運營的程式,尤其是伺服器程式,一旦core dump,後果不堪設想,有過伺服器開發經驗的朋友,一定都經歷過深夜美夢中,被 驚醒的慘痛經歷,手忙腳亂把伺服器重新啟動,第二天上班還要被老闆一頓狠批。所以,...

linux下通過指令碼實現自動重啟程式

無論什麼程式都不可能完美無缺,理論上,任何程式都有co程式設計客棧re dump的一天,正式運營的程式,尤其是伺服器程式,一旦core dump,後果不堪設想,有過伺服器開發經驗的朋友,一定都經歷過深夜美夢中,被 驚醒的慘痛經歷,手忙腳亂把伺服器重新啟動,第二天上班還要被老闆一頓狠批。所以,程式發生...