DEL命令的奇怪行为
问题描述:
正在编写一个简短的脚本来搜索所有具有特定扩展名的文件,重命名并删除它们......但我注意到删除脚本中存在一些奇怪的行为。DEL命令的奇怪行为
比方说,我有四个文件:file.lo,file.log,file.logs,& file.logarithm
如果我使用命令del /s /q /f *.lo
那么只有文件。 lo已删除。如果我使用命令del /s /q /f *.logs
,则只会删除file.logs。
但是,如果我使用命令del /s /q /f *.log
,则.log,.logs和.logarithm被删除。唯一剩下的文件是file.lo
任何人都可以解释这种行为吗?
答
根据this answer,在搜索模式使用的恰好3个字符的扩展使得搜索也具有较长的扩展返回匹配的文件,否则总是找到正确的文件。你应该显然使用"file?.log"
,"file.log."
,因为斯蒂芬建议,或者these suggestions
+0
这非常棒。谢谢。 – vadre1121
答
说明:file.logarithm
匹配8.3短名称file.log
解决方法:del file.log.
之一你有问题吗?您在问题中显示了'del/s/q/f * .logs'两次,但列出了不同的结果。 –
感谢您的支持,编辑帖子 – vadre1121