【问题标题】:%%A was unexpected at this time此时 %%A 出乎意料
【发布时间】:2012-02-16 21:02:27
【问题描述】:

我想压缩一个包含文件的文件夹。所以为了做到这一点,我需要遍历整个文件列表并执行 7za 命令。 (7zip命令行版本)

for /f %%A in ('"G:\Files Sample\zip\txt\*.t
xt"') do 7za -tzip "%%A.zip" "%%A"

但是 windows 说这个命令是无效的。

错误信息是

%%A was unexpected at this time

我该如何克服这个问题?

【问题讨论】:

    标签: windows command-line


    【解决方案1】:

    %%A 在您使用批处理程序 (*.bat) 时使用

    尝试删除一个'%'

    【讨论】:

    • 是的,有帮助,还有一点需要注意,你需要把 dir /b 命令放在括号内
    • 还应该注意,您似乎不能使用 %file 之类的东西。参数似乎只允许使用单个字母。
    【解决方案2】:

    如果您是从命令行执行此操作,则不必转义 %,因此 %a 就足够了。您只需要使用批处理文件中的%%a

    此外,您希望选择文件而不是执行“G:\Files Sample\zip\txt\*.txt”作为命令,这是 /f 开关与单引号结合使用的功能。完整的命令是:for %A in ("G:\Files Sample\zip\txt\*.txt") do 7za -tzip "%A.zip" "%A"

    【讨论】:

      【解决方案3】:

      在批处理文件中试试这个。

      FOR "G:\Files Sample\zip\txt\" %%G IN (*.txt) DO  7za -tzip "%%G.zip" "%%G"
      

      添加/R 作为选项以搜索所有子文件夹中的文件。

      你可以在ss64找到对cmd-方法的一个很好的解释

      【讨论】:

        猜你喜欢
        • 2014-09-11
        • 2018-07-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多