/dev/null

类Unix系统特殊设备文件

/dev/null(或稱空裝置)在類Unix系統中是一個特殊的裝置檔案,它丟棄一切寫入其中的數據(但報告寫入操作成功),讀取它則會立即得到一個EOF[1]

程式設計師行話,尤其是Unix行話中,/dev/null被稱為位元桶[2]或者黑洞

使用

空裝置通常被用於丟棄不需要的輸出,或作為用於輸入流的空檔案。這些操作通常由重新導向完成。

/dev/null是一個特殊檔案,而不是目錄,因此不能使用Unix命令mv將檔案移動到其中。使用rm命令才是Unix中刪除檔案的正確方法。

本概念大致相當於CP/MDOSMicrosoft Windows中的NUL:或單純的NUL裝置,Windows NT及其後續系統中的\Device\NullNULAmiga中的NIL:,以及OpenVMS中的NL:。在基於.NETWindows PowerShell中,相同的概念為$null。

電腦文化中的參照

在Unix程式設計師使用的科技行話中和隱喻經常使用這一概念,例如「請將投訴傳送到/dev/null」,「我的郵件被存檔到了/dev/null」,以及「重新導向到/dev/null」,分別表示:「不要拿投訴來煩我」,「我的郵件被刪掉了」,和「一邊去」。iPhone Dev Team通常使用「可以向/dev/null捐款」,意為他們不接受捐款。

空裝置也是科技幽默的常用主題之一,例如警告用戶系統的/dev/null已經使用了98%。1995年愚人節一家德國雜誌c't寫道,一種增強的/dev/null晶片可以藉由將數據轉換成內部LED的閃光以有效的處理輸入數據。

蘋果公司也曾在2003年利用這個概念做過一則廣告,「將其它牌子的UNIX都送進/dev/null」,表明執行Mac OS XPowerBook包含了全部UNIX特性[3]

參見

參考文獻

  1. ^ Single Unix Specification Section 10.1. [2010-09-19]. (原始內容存檔於2009-08-04). 
  2. ^ Jargon file entry for "bit bucket". [2010-09-19]. (原始內容存檔於2013-06-18). 
  3. ^ 存档副本 (PDF). [2010-09-19]. (原始內容存檔 (PDF)於2015-10-09).