2>/dev/null和>/dev/null 2>&1和2>&1>/dev/null


標准輸入0    從鍵盤獲得輸入 /proc/self/fd/0 
標准輸出1    輸出到屏幕(即控制台) /proc/self/fd/1 
錯誤輸出2    輸出到屏幕(即控制台) /proc/self/fd/2 

1 表示stdout標准輸出,系統默認值是1,所以">/dev/null"等同於"1>/dev/null" 
2 表示stderr標准錯誤 
& 表示等同於的意思,2>&1,表示2的輸出重定向等同於1 

/dev/null代表linux的空設備文件,所有往這個文件里面寫入的內容都會丟失,俗稱“黑洞” 

1、2>/dev/null意思就是把錯誤輸出到“黑洞” 

2、>/dev/null 2>&1默認情況是1,也就是等同於1>/dev/null 2>&1。意思就是把標准輸出重定向到“黑洞”,還把錯誤輸出2重定向到標准輸出1,也就是標准輸出和錯誤輸出都進了“黑洞” 

3、2>&1 >/dev/null意思就是把錯誤輸出2重定向到標准出書1,也就是屏幕,標准輸出進了“黑洞”,也就是標准輸出進了黑洞,錯誤輸出打印到屏幕 
關於這里”&”的作用,我們可以這么理解2>/dev/null重定向到文件,那么2>&1,這里如果去掉了&就是把錯誤輸出給了文件1了,用了&是表明1是標准輸出


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM