WindowsでCON、PRN、Nullフォルダーを作成できないのはなぜですか?[重複]


10

私は新しいフォルダを作成し、それを名前を変更するとnul言うことThe Specified device name is invalid.

その後、私は、私たちが作ることができない他のフォルダがあり、名前を取得、検索しましたかconnulprn

これらの名前は何の略ですか?これらの名前のフォルダを作成できないのはなぜですか。

回答:


32

すべては古いPIPCP / Mコマンドで始まります。このコマンドはファイルのコピーに使用され、ファイルの代わりに特別なデバイス名を指定できました。

CP / Mを開発したGary Kildallは、ファイル構造とコマンドプロセッサの設計の多くを、PDP-11用のRSTS / Eなどのデジタル機器のオペレーティングシステムに基づいていました。フロッピーディスク上のファイルにアクセスする以外に、CP / MのPIPコマンドは、次の「特殊ファイル」との間でデータを転送できます。

CON: — console (input and output)
AUX: — an auxiliary device. In CP/M 1 and 2, PIP used PUN: (paper tape punch) and RDR: (paper tape reader) instead of AUX:
LST: — list output device, usually the printer
PRN: — as LST:, but lines were numbered, tabs expanded and form feeds added every 60 lines
NUL: — null device, akin to /dev/null
EOF: — input device that produced end-of-file characters, ASCII 0x1A
INP: — custom input device, by default the same as EOF:
OUT: — custom output device, by default the same as NUL:

ただし、処理がPIPに制限されていたため、これらは真のデバイスファイルではありませんでした。

その後、DOSは80年代初頭に登場しました。8086CP / Mクローンは、当時の新しいIBM PCで動作するように設計されていました。DOSはこの概念をさらに拡張しました-上記は「特別なファイル」であり、DOSコマンドでファイルが予期される場所であればどこにでも指定できます。したがって、組み込みのDOS copyコマンドを使用して、を実行することでドキュメントを印刷できますcopy myfile.txt prn:。(CP / Mの今後のバージョンではこれが可能だったかもしれませんが、私はそれを疑っています。)

Windows 95に向けてフラッシュします。それ自体がDOSの上に構築されており、これらの特別なファイル名を処理するコードは残っていますが、明らかにWindows 95のGUI部分にあまり統合されていません。CON\ CONバグなどの問題が発生しました-これはIEでも問題を引き起こすことがわかっていました。

おそらく潜んでいるバグのパラノイア(NTベースのバージョンのWindowsにはないはずですが)が原因である可能性があります。マイクロソフトは、エクスプローラーがその名前のファイルを作成する試みを常に拒否するようにすることを決定しました。今使っているWindows 8システムでも「con」というフォルダが作れないのがおかしいです。(Windows 10では、これを行うことはできません)。


これをWindowsでフォルダまたはファイルに 'CON'という名前を付けることができないのはなぜですか。あなたの説明は、既存の答えよりもはるかに詳細になります。
Stevoisiak
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.