詳述Linux后臺運行命令(四)
Linux后臺運行命令cron和crontab、at和&都是在賬戶登錄時運行,如果你不是管理員,那么有可能要退出賬戶,但是如果進程在退出時還沒能運行完,那么這個Linux后臺運行命令就會非常有用。
nohug
如果你正在運行一個進程,而且你覺得在退出帳戶時該進程還不會結束,那么可以使用n o h u p命令。該命令可以在你退出帳戶之后繼續運行相應的進程。n o h u p就是不掛起的意思( no hang up)。
該命令的一般形式為:
代碼:
nohup command &
使用Linux后臺運行命令nohup提交作業
如果使用n o h u p命令提交作業,那么在缺省情況下該作業的所有輸出都被重定向到一個名為n o h u p . o u t的文件中,除非另外指定了輸出文件:
代碼:
nohup command > myout.file 2>&1
在上面的例子中,輸出被重定向到m y o u t . f i l e文件中。
讓我們來看一個例子,驗證一下在退出帳戶后相應的作業是否能夠繼續運行。我們先提交一個名為p s 1的日志清除進程:
代碼:
$nobup ps1 &
現在退出該s h e l l,再重新登錄,然后執行下面的命令:
代碼:
$ps x |grep ps1
我們看到,該腳本還在運行。如果系統不支持ps x命令,使用ps -ef|grep ps1命令。
【編輯推薦】