有没有可能嵌套两个forfile
命令,这样我就可以通过路径名和扩展名进行过滤,然后只在这些双重筛选的文件上运行命令?
例如,我想获取所有用户的Outlook HTML签名。 我可以通过以下方式完成:
forfiles /s /p c:\Users /m *Signatures* /c "cmd /c forfiles /s /p @path /m *.htm"
这将仅显示文件名,因为forfiles
的默认行为是调用cmd /c echo @file
。
更改此设置无效,因为我需要在内部的forfiles
命令中设置/c
-选项,这需要在引号中设置命令,从而导致双引号:
forfiles /s /p c:\Users /m *Signatures* /c "cmd /c forfiles /s /p @path /m *.htm /c "cmd /c echo @path""
如何避免内部引号或使用其他方法运行由路径子字符串和文件扩展名过滤的所有文件上的任何命令?
敬礼
sc911
[编辑]忘记了递归搜索的/s
[/编辑]
CMD.exe
的FORFILES
更快地处理您的文件。 - Squashman