cmd有通配符错误?

Živ*_*vić 3 windows command-line wildcards

文件夹中的文件:

a.j
ab.jp
abc.jpg
abcd.jpeg
Run Code Online (Sandbox Code Playgroud)

dir 命令结果:

Command       Result (Files shown)
----------    --------------------
dir ?.*       a.j
dir ??.*      a.j, ab.jp
dir ???.*     a.j, ab.jp, abc.jpg
dir ????.*    a.j, ab.jp, abc.jpg, abcd.jpeg
Run Code Online (Sandbox Code Playgroud)

所以我们可以看到 single?表示“0 或 1 个字母”。

现在更多的dir命令结果:

Command       Result (Files shown)
----------    --------------------
dir *.?       a.j
dir *.??      a.j, ab.jp
dir *.???     a.j, ab.jp, abc.jpg, abcd.jpeg --> What is this?!
dir *.????    a.j, ab.jp, abc.jpg, abcd.jpeg
Run Code Online (Sandbox Code Playgroud)

在第三个命令中为什么???显示jpeg?你可以解释吗?这是 cmd 中的错误吗?

boo*_*t13 7

这是因为三个问号与文件名的简短版本的扩展名相匹配。用

dir /x
Run Code Online (Sandbox Code Playgroud)

显示(和使用)文件名的短版本。