2013-09-23 209 views
2

我有一个批量命令,按日期对文件进行排序,然后删除除最后10个以外的所有文件。当我在CMD窗口中运行它时,此命令运行良好。但是,当我将它放在BAT文件中时,出现错误。命令在命令行中运行,但不在BAT文件中

命令(CMD窗口工作正常):

for /f "skip=10 delims=" %A in ('dir /a:-d /b /o:-d /t:c *.jpg ^2^>nul') do del %A 

错误,我得到,如果想在一个批处理文件运行它:

Q:\Testbk>test1 
-d was unexpected at this time. 

Q:\Testbk>for /f "skip=10 delims=" -d /b /o:-d /t:c *.jpg ^2^>nul") do del A 

任何想法,如何解决它运行在一个BAT文件将非常赞赏。

+2

从“for /?”帮助屏幕:'要在批处理程序中使用FOR命令,请指定%%变量而不是%变量' –

+0

是的。不是bash--我的意思是批处理..脚本真棒? – kwikness

+0

我是个白痴。许多tx! –

回答

1

您需要批处理文件中的%% A.我将原始批处理文件代码更改为键入而不是删除

for /f "skip=4 delims=" %%A in ('dir /a:-d /b /o:-d /t:c *.jpg 2^>nul') do type "%%A" 

因为我不想删除我的文件。

相关问题