Shell

自動後台程序

  • April 5, 2019

我在 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 分鐘執行一次。

引用自:https://unix.stackexchange.com/questions/224133