当我作出新的文件夹,重命名它nul
,它说The Specified device name is invalid.
然后我搜索这是我们不能让其他的文件夹,并获得名字con
,nul
,prn
?
这些名字代表什么?为什么我们不能用这些名称制作文件夹?
当我作出新的文件夹,重命名它nul
,它说The Specified device name is invalid.
然后我搜索这是我们不能让其他的文件夹,并获得名字con
,nul
,prn
?
这些名字代表什么?为什么我们不能用这些名称制作文件夹?
Answers:
一切都从旧的PIP
CP / 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年代初问世,它是一个8086 CP / M克隆,旨在在当时新的IBM PC上运行。DOS对该概念进行了进一步扩展-上面是“特殊文件”,可以在DOS命令中期望文件的任何位置进行指定。因此,copy
可以通过执行内置的DOS 命令来打印文档copy myfile.txt prn:
。(CP / M的较新版本也许可以做到这一点,但我对此表示怀疑。)
快进到Windows95。它本身是建立在DOS之上的,处理这些特殊文件名的代码仍然保留,但是显然在Windows 95的GUI部分集成得不够好。这引起了一些问题,例如CON \ CON错误 -并且众所周知,这也会导致IE问题。
可能是由于存在更多潜在错误的偏执(即使在基于Windows的Windows版本中不应该存在),Microsoft决定将其放置在Explorer始终拒绝创建该名称文件的任何尝试中。有趣的是,即使在我现在使用的Windows 8系统中,我仍然无法创建名为“ con”的文件夹。(Windows 10仍然不允许您执行此操作)。