在 Win10 中不能创建 con.txt 文件?

2018-06-06 12:03:49 +08:00
 leafin

刚刚在 idea 里面创建文件,叫 con.txt ,提示创建失败。

然后我直接到 windows 资源管理器里面去创建,提示"指定的设备名无效",这是什么鬼隐藏的 BUG ?

微软不允许我文件起名叫 con 吗? con.html 也没法创建。

系统版本:win10

5128 次点击
所在节点    Windows
9 条回复
dandycheung
2018-06-06 12:14:24 +08:00
不能。con 是特殊文件,还有其他的几个,DOS 年代的遗留产物。
hjc4869
2018-06-06 12:17:13 +08:00
不能创建的文件包括 CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9。

另外,你可以用 cygwin 强行创建。
leafin
2018-06-06 12:34:43 +08:00
@dandycheung
@hjc4869 可怕,这都什么年代了,不能修复一下吗
hjc4869
2018-06-06 12:45:03 +08:00
@leafin 这不是 bug,是为了兼容性。

早期 Windows 设计 CreateFile("CON")打开 console,COMx 串口,LPTx 并口,NUL 相当于 UNIX 的 /dev/null,到现在一直向下兼容。
0attocs
2018-06-06 12:49:48 +08:00
@leafin 这不是 bug,是保证兼容的 feature。CON 是 NT device namespace 的保留名,CON+扩展名在 NT namespace 之上的 win32 file namespace,可以但不推荐创建。
Magnus1k
2018-06-06 13:00:45 +08:00
dos 时代可以直接用 con 从键盘获取数据
比如
copy con abc.txt
hljjhb
2018-06-06 13:19:56 +08:00
nul 同理
heimeil
2018-06-06 14:05:16 +08:00
这兼容跨度也没谁了
Athrob
2018-06-06 14:28:11 +08:00
好久前遇到过, 确实如 2 楼所说那些文件不能创建.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/460834

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX