この記事は Windows 上で名前が「NUL」のファイルを削除する方法について説明します。
そもそも Windows (MS-DOSも) において、NUL や AUX などは特別な意味を持っているため普通はこのような名前のファイルを作れません。 しかし何かの拍子にできてしまう事もあるようです。 私の場合は MinGW の make コマンド中でコマンド表示を消そうと NUL へリダイレクトした時に NUL というファイルができてしまいました。 何にせよ、特殊な名前のファイルは削除したくても普通の方法では削除できません。 もしこういった名前のファイルを作ってしまい、削除できなくなった場合は参考にどうぞ。
まず削除したい特殊な名前のファイルのフルパスを調べておきます。
続いてコマンドプロンプトを起動、DEL コマンドを実行するのですが、
この時削除対象のファイルパスを \\.\ の後に続けて書きます。
例えばパス C:\Temp\NUL となるファイルを削除する場合、次のようなコマンドを実行します。
DEL \\.\C:\Temp\NUL
これで削除できると思います。
\\.\で始めるパスは、UNC (Universal Naming Convertion) 形式と呼ばれる形式のパスです。 ネットワークを通じて別のコンピュータ上にあるファイルも表せる、 パスの拡張版と考えれば良いでしょうか。 正直に言って私はまったく使わないので詳しくは知りません(苦笑)。 UNC 形式のパスは UNIX 由来らしいので、 MS-DOS 由来の NUL や AUX というファイル名が特別扱いされない、 という事なのではないでしょうか。