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