先說一下linux重定向:
0、1和2分別表示標準輸入、標準輸出和標準錯誤資訊輸出,可以用來指定需要重定向的標準輸入或輸出。
在一般使用時,預設的是標準輸出,既1.當我們需要特殊用途時,可以使用其他標號。例如,將某個程式的錯誤資訊輸出到log檔案中:./program 2>log。這樣標準輸出還是在螢幕上,但是錯誤資訊會輸出到log檔案中。
另外,也可以實現0,1,2之間的重定向。2>&1:將錯誤資訊重定向到標準輸出。
linux下還有乙個特殊的檔案/dev/null,它就像乙個無底洞,所有重定向到它的資訊都會消失得無影無蹤。這一點非常有用,當我們不需要回顯程式的所有資訊時,就可以將輸出重定向到/dev/null。
如果想要正常輸出和錯誤資訊都不顯示,則要把標準輸出和標準錯誤都重定向到/dev/null, 例如:
# ls 1>/dev/null 2>/dev/null
還有一種做法是將錯誤重定向到標準輸出,然後再重定向到 /dev/null,例如:
# ls >/dev/null 2>&1
注意:此處的順序不能更改,否則達不到想要的效果,此時先將標準輸出重定向到 /dev/null,然後將標準錯誤重定向到標準輸出,由於標準輸出已經重定向到了/dev/null,因此標準錯誤也會重定向到/dev/null,於是一切靜悄悄:-)
由於使用nohup時,會自動將輸出寫入nohup.out檔案中,如果檔案很大的話,nohup.out就會不停的增大,這是我們不希望看到的,因此,可以利用/dev/null來解決這個問題。
nohup ./program >/dev/null 2>log &
如果錯誤資訊也不想要的話:
nohup ./program >/dev/null 2>&1 &
linux nohup命令後台執行
1.nohup 用途 不結束通話地執行命令。語法 nohup command arg 無論是否將 nohup 命令的輸出重定向到終端,輸出都將附加到當前目錄的 nohup.out 檔案中。如果當前目錄的 nohup.out 檔案不可寫,輸出重定向到 home nohup.out 檔案中。如果沒有檔案...
linux nohup後台執行檔案
linux系統,大多數通過xshell去訪問。在此 linux系統上部署python3環境後,需要後台執行.py檔案時,可這樣 nohup python py my.log 2 1 nohup python u py my.log 2 1 檢視linux系統 當前後台運 況,可這樣 ps ef gr...
linux nohup命令 在後台執行程式
使用經驗 執行某公司的應用 nohup sh run.sh b 0.0.0.0 使用nohup讓程式永遠後台執行 usr local mysql bin mysqld safe user mysql 但是加入我們很多程式並不象mysqld一樣做成守護程序,可能我們的程式只是普通程式而已,一般這種程式...