Windows 中的“move ^

Windows 中的“move ^

我意外地在一个很大的工作目录中输入了这个命令并得到了这个结果:

d:\prog>move ^<
       10 file(s) moved.

有人能解释一下我刚刚做了什么吗?我不知道 :/

笔记:

这种情况似乎仅当目录中只有扩展名(而没有名称)的文件时才会发生,例如.a

在此处输入图片描述

答案1

您使用了通配符,因此匹配的文件会被移动。Microsoft 文档(底部的链接)指出

  • DOS命令(> 大于)匹配任何单个字符,或者在遇到句点或名称字符串的结尾时,将表达式前进到连续 DOS_QM 集的末尾。

  • DOS_STAR(< 小于)匹配零个或多个字符,直到遇到并匹配名称中的最后一个 .。

因此,你的命令是“移动”(由于目标文件夹与源文件夹相同,因此没有实际的移动操作)没有扩展名的文件,也就是说,您的命令相当于move *.

现在下一个问题应该是:

  • 如果^<(或仅"<")选择没有扩展名的文件,为什么.a会选择没有名称、只有扩展名的文件?

答案是简称. 通配符选择适用于文件的长名称和短名称。如果您尝试使用dir /x列出文件短名称,您将大概请查看文件的短名称.a没有扩展名。

更多信息

相关内容