nohup

nohuplinux

nohup /usr/bin/perl /root/Personkeeper.pl > /dev/null &ide

nohup是永久執行

&是指在後臺運行
spa

就是指,用nohup運行命令可使命令永久的執行下去,和用戶終端沒有關係,例如咱們斷開SSH鏈接都不會影響他的運行,注意了nohup沒有後臺運行的意思;&纔是後臺運行

&是指在後臺運行,但當用戶推出(掛起)的時候,命令自動也跟着退出

那麼,咱們能夠巧妙的吧他們結合起來用就是
nohup COMMAND &
這樣就能使命令永久的在後臺執行

舉個例子nohup tail -f nohup.out
而後退出登陸,再鏈接,用ps -ef 你會還能看到在運行
ps -ef
root      3457     1  0 18:20 ?        00:00:00 tail -f nohup.out

另外,nohup執行後,會產生日子文件,把命令的執行中的消息保存到這個文件中,通常在當前目錄下,若是當前目錄不可寫,那麼自動保存到執行這個命令的用戶的home目錄下,例如root的話就保存在/root/下
命令行






nohup命令:若是你正在運行一個進程,並且你以爲在退出賬戶時該進程還不會結束,那麼可使用nohup命令。該命令能夠在你退出賬戶/關閉終端以後繼續運行相應的進程。nohup就是不掛起的意思( n ohang up)。 
該命令的通常形式爲:nohup command & orm

linux重定向:進程

0 標準輸入it

1 標準輸出class

2 標準錯誤信息輸出 。用來指定須要重定向的標準輸入或者輸出。登錄

eg:將某個程序的錯誤信息輸出到log文件中: ./program 2 >log。這樣標準輸出仍是在屏幕上,可是錯誤信息會輸出到log文件中。後臺

        另外,也能夠實現0,1,2之間的重定向。2>&1:將錯誤信息重定向到標準輸出

Linux下還有一個特殊的文件/dev/null,它就像一個無底洞,全部重定向到它的信息都會消失得無影無蹤。這一點很是有用,當咱們不須要回顯程序的全部信息時,就能夠將輸出重定向到/dev/null。

eg:

>/dev/null 2>&1  == 1>/dev/null 2>/dev/null,默認狀況下就是1,標準輸出,因此通常都省略。而&符號。後面接的是必須的文件描述符。不能寫成2>1 這樣就成了標準錯誤重定向到文件名爲1的文件中,而不是重定向標準錯誤到標準輸出中。因此這裏就是:標準輸出重定向到了/dev/null,而標準錯誤又重定向到了標準輸出,因此就成了標準輸出和標準錯誤都重定向到了/dev/null。


2>&1 >/dev/null 

命令行的重定向什麼的, 是在執行命令以前就準備好了的. 解釋順序從左至右依次進行, 2&>1 ,而1是屏幕, 因此標準錯誤重定向到屏幕, 再而 1>/dev/null , 即標準輸出重定向到 /dev/null, 上述2>&1 >/dev/null 


&>/dev/null

// 這個就是,無論你是啥玩意兒文件描述符,統統重定向到/dev/nul

相關文章
相關標籤/搜索