Command line 在forfiles中使用@FILE无效

Command line 在forfiles中使用@FILE无效,command-line,cmd,command-prompt,Command Line,Cmd,Command Prompt,我试图建立一个批处理文件,删除所有超过30天的excel文件。到目前为止,我有命令: forfiles -p"N:\QC\ATR's" -s -m*.xls* -d-30 -c"CMD /C del /f /q @FILE" 唯一的问题似乎是@FILE在文件夹/文件名中有一个空格,因此del命令无法找到指定的路径。例如,查看它所说命令的回声 Could Not Find N:\QC\ATR's\'-5 当它真的应该寻找路径的时候 N:\QC\ATR's\-5 brightness study

我试图建立一个批处理文件,删除所有超过30天的excel文件。到目前为止,我有命令:

forfiles -p"N:\QC\ATR's" -s -m*.xls* -d-30 -c"CMD /C del /f /q @FILE"
唯一的问题似乎是@FILE在文件夹/文件名中有一个空格,因此del命令无法找到指定的路径。例如,查看它所说命令的回声

Could Not Find N:\QC\ATR's\'-5
当它真的应该寻找路径的时候

N:\QC\ATR's\-5 brightness study
明白我的意思吗?有没有办法告诉@FILE变量用引号之类的东西包装


谢谢

您可以尝试以下方法:

SET FILE = -5 brightness study

forfiles -p"N:\QC\ATR's" -s -m*.xls* -d-30 -c"CMD /C del /f /q %FILE%"
查看这些网站以获得帮助:

SET FILE = -5 brightness study

forfiles -p"N:\QC\ATR's" -s -m*.xls* -d-30 -c"CMD /C del /f /q %FILE%"


我想出来了。我只是在文件变量周围添加了十六进制编码的qout

forfiles -p"N:\QC\ATR's" -s -m*.xls* -d-30 -c"CMD /C del /f /q ^0x22@FILE^0x22"