Shell
自動後台程序
我在 SSH 伺服器上執行我的 Raspberry Pi,並且希望能夠在家外訪問它。當然,我只需要一個IP。但是由於我糟糕的網際網路,它不斷地掉線。我的IP一直在變化。
為了解決這個問題,我設置了一個腳本來測試我的 IP 是否與 30 分鐘前相同,每 30 分鐘一次。我還設置了一個腳本來殺死它,所以它不會永遠持續下去或直到重新啟動。
如何讓我的程序在後台自行執行,而無需使用者互動。正則表達式之類的
nohup
?可以nohup
自自動化嗎?我想要這個功能,所以我不需要在外出時打開額外的電腦。(再次,我從 SSH 訪問我的 Pi)
使用以下在後台執行命令,它與終端分離
nohup command &
或者如果從終端執行命令,則放入後台執行:
command
然後
ctrl+z
在鍵盤上暫停目前程序,然後鍵入:bg
將暫停的程序推到後台。類型:
jobs
列出目前作業,包括您的後台程序。類型:
fg %n
n
命令中的作業編號在哪裡jobs
。
nohup command &
可以很容易地編寫腳本。
如果您已安裝
crontab
,則鍵入命令crontab -e
並編寫以下內容
30 * * * * /home/user/ipcheck.sh
這將
ipcheck.sh
在後台每 30 分鐘執行一次。