1. 程式人生 > >linux系統shell中重定向 標準輸出 錯誤輸出 >/dev/null 2>&1

linux系統shell中重定向 標準輸出 錯誤輸出 >/dev/null 2>&1

經常shell指令碼中,會看到: 仔細體會下面例子

>/dev/null  2>&1 這句話的意思簡單理解為:標準輸出和錯誤輸出都不會輸出出來。

[email protected]:/tmp>date>1.txt >/dev/null 2>&1
[email protected]:/tmp>cat 1.txt 
[email protected]:/tmp>

當然也可以拆開了用:

>/dev/null 意思為:標準輸出不輸出

[email protected]
:/tmp>date >/dev/null [email protected]:/tmp> 或者 [email protected]:/tmp>date>1.txt >/dev/null [email protected]:/tmp>cat 1.txt  [email protected]:/tmp>

2>&1 意思為:標準輸出和出錯輸出同時輸出

[email protected]:/tmp>data>1.txt 2>&1
[email protected]
:/tmp>cat 1.txt -bash: data: command not found

 2>&1 >/dev/null 意思為正確輸出不輸出,只輸出錯誤輸出

[email protected]:/tmp>data>1.txt 2>&1 >/dev/null
[email protected]:/tmp>cat 1.txt 
-bash: data: command not found

參考:shell中>/dev/null 2>&1

Shell標準輸出、標準錯誤 >/dev/null 2>&1