了解为什么 DIR 命令会以这种方式运行

Gui*_*ume 9 windows batch dir cmd.exe

为什么:

dir "test.txt "
dir test.txt.
dir "test.txt    . .   ."
Run Code Online (Sandbox Code Playgroud)

所有列表 test.txt 在 Windows 提示符下都没有错误?是否还有其他后缀被 Windows 忽略?

(请注意,我在文件名末尾添加了空格、点)

dbe*_*ham 8

Windows shell 不允许文件或文件夹名称以点或空格结尾。在许多情况下,包括使用DIR.

我在 Microsoft 的 Windows Dev Center 文章中发现以下确认名称不能以点或空格结尾:命名文件、路径和命名空间

不要以空格或句点结束文件或目录名称。尽管底层文件系统可能支持此类名称,但 Windows 外壳和用户界面不支持。但是,可以将句点指定为名称的第一个字符。例如,“.temp”。

  • @Guillaume - 请参阅我更新的答案和参考。根据微软的文章,我会说没有其他字符受到影响。 (2认同)