当我在cmd中手动运行以下命令时,它可以正常工作
for /F "delims=" %f in ('dir /B C:\Users\DMS\Downloads\*^|FileByAge.exe 2') do echo %f
但是,当我将该命令放入批处理文件并运行它时,我得到以下内容:
\Users\DMS\Downloads\*|FileByAge.exe was unexpected at this time.
for /F "delims=" \Users\DMS\Downloads\*^|FileByAge.exe 2') do echo f
有什么建议吗?
我想要(Find out if file is older than 4 hours in Batch file)的答案在我的案例中起作用
答案 0 :(得分:2)
对于批处理文件中的%%
循环变量,您需要使用%
而不是for
。
for /F "delims=" %%f in ('dir /B C:\Users\DMS\Downloads\*^|FileByAge.exe 2') do echo %%f