/dev/null
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/01/24 00:22 UTC 版)
/dev/null
(nullデバイスとも呼ばれる)は、UNIXやUnix系オペレーティングシステム (OS) におけるスペシャルファイルの1つで、そこに書き込まれたデータを全て捨て(writeシステムコールは成功する)、読み出してもどんなプロセスに対してもデータを返さない(EOFを返す)。
概要
/dev/null
は通常、プロセスの不要な出力ストリームを捨てるのに使うか、入力ストリームのための空のファイルとして使う。これは一般にリダイレクトによってなされる。プログラマ、特にUnix系のプログラマの間では、ビットバケツ (bit bucket)、あるいはブラックホール (black hole) などとも呼ばれる。
用途
UNIXやUnix系OSのソフトウェアは、動作時に標準出力や標準エラー出力に動作状況や、エラーや警告を伝えるメッセージを出力することがある。これらはデフォルトで画面に表示され、cronデーモンで自動的に実行された場合は出力されたメッセージ文がメールでユーザに送られたりする。シェルスクリプトなどにおいてもこれらのメッセージ出力が邪魔になることがある。ソフトウェアによっては、コマンドラインオプション等でこれらのメッセージを出力しないようにできるものもあるが、できないものもある。
そのような場合に、ソフトウェアが標準出力や標準エラー出力に出力するメッセージを /dev/null
にリダイレクトするようにあらかじめ指定しておくと、これを回避できる。
他のOSにおける等価機能
CP/M(および後のMS-DOSやWindows)での同等のデバイスとして NUL:
またはNUL
(NULデバイス[1])がある。例えば、PAUSE>NUL
のように出力をNULに向けることで、ユーザーのキー押下を待ちうけつつ、画面には何も表示しないという使い方があった。Amigaでは、デバイス名はNIL:
となっていた。Windows NTやその後のWindowsでは、内部的には\Device\Null
という名前になり、DOSのNUL
はそのデバイスへのソフトリンクになっていた。OpenVMSでは、NL:
という名前である。
俗語
UNIXプログラマの間では、次のような冗談めかした隠語表現あるいはメタファーに使われる。
- 「不平不満は
/dev/null
に送ってください」(不平不満は受け付けない) - 「私のメールは
/dev/null
にアーカイブされた」(私のメールは削除された) - 「
/dev/null
にリダイレクトしろ」(死んじまえ)
欧米ではチタニウムPowerBook G4の広告コピーとして The Titanium Powerbook G4 Sends other UNIX boxes to /dev/null.(チタニウムPowerBook G4は他のUNIXマシンを/dev/null送りにする)という文が使われた。
ジョークのネタとしてもよく使われ、システムの/dev/null
は98%まで使用済みなどというユーザーへのワーニング表示などがある。1995年、ドイツの雑誌 c't のエイプリルフール記事として、入力されたデータを内蔵するLEDの点滅に変換する/dev/null
チップが登場したという嘘の記事が掲載されたことがある。
関連項目
参考文献
- ^ Microsoft. “SHELL Redirected to NUL Device Suppresses MS-DOS Message”. 2013年10月6日閲覧。
/dev/null
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/06 05:18 UTC 版)
「デバイスファイル」の記事における「/dev/null」の解説
あらゆる入力を受け付け、それを捨てる。出力はしない。ビットバケツの一種。
※この「/dev/null」の解説は、「デバイスファイル」の解説の一部です。
「/dev/null」を含む「デバイスファイル」の記事については、「デバイスファイル」の概要を参照ください。
固有名詞の分類
- dev/nullのページへのリンク