Linux下">/dev/null 2>&1 "相關知識說明

在學習Linux的過程當中,常會看到一些終端命令或者程序中有
">/dev/null 2>&1"
出現,因爲已經遇到了好幾回了,爲了理解清楚,不妨花點時間百度或者google一下相關的知識。shell

 

0:表示鍵盤輸入(stdin)
1:表示標準輸出(stdout),系統默認是1
2:表示錯誤輸出(stderr)
command >/dev/null 2>&1 & == command 1>/dev/null 2>&1 &學習

1)command:表示shell命令或者爲一個可執行程序
2)>:表示重定向到哪裏
3)/dev/null:表示Linux的空設備文件
4)2:表示標準錯誤輸出
5)&1:&表示等同於的意思,2>&1,表示2的輸出重定向等同於1
6)1 表示stdout標準輸出,系統默認值是1,因此">/dev/null"等同於 "1>/dev/null"
6)&:表示後臺執行,即這條指令執行在後臺運行google

 

1>/dev/null:表示標準輸出重定向到空設備文件,也就是不輸出任何信息到終端,不顯示任何信息。
2>&1:接着,標準錯誤輸出重定向到標準輸出,由於以前標準輸出已經重定向到了空設備文件,因此標準錯誤輸出也重定向到空設備文件。後臺

 

這條命令的意思就是在後臺執行這個程序,並將錯誤輸出2重定向到標準輸出1,而後將標準輸出1所有放到/dev/null文件,也就是清空.百度


因此能夠看出" >/dev/null 2>&1 "經常使用來避免shell命令或者程序等運行中有內容輸出。終端

相關文章
相關標籤/搜索