通过cmd中的命令删除了Dir,但与bat文件中的命令不同

时间:2019-02-24 09:05:27

标签: windows batch-file cmd

我正在尝试删除与某些前缀匹配的目录。

我希望可以通过调用一些bat文件来实现。

直接将for /D %f in (C:\Windows\Temp\_MEI*) do rmdir /s %f写入cmd会删除与前缀匹配的每个文件夹。

尽管,调用仅上面的命令行的test.bat却无济于事,并且我得到“ ...这时是意外的”错误。

C:\Users\Borat\olympus-skeleton\dist>test.bat
\Windows\Temp\_MEI*) was unexpected at this time.
C:\Users\Borat\olympus-skeleton\dist>for /D \Windows\Temp\_MEI*) do rmdir /s f
C:\Users\Borat\olympus-skeleton\dist>

那是为什么?

1 个答案:

答案 0 :(得分:3)

请参见documentation for for

  

语法

for {%%|%}<Variable> in (<Set>) do <Command> [<CommandLineOptions>]
     

参数

     

参数 说明

     

{%%|%}<Variable>是必需的。表示一个可替换的参数。使用单个百分号(%)在命令提示符下执行 for 命令。使用双百分号(%%)在批处理文件中执行 for 命令。变量区分大小写,并且必须使用字母值表示,例如% A ,% B 或% C

或在命令提示符下运行for /?

基本上,使用%%f代替%f