【问题标题】:Command prompt: loop and run command on all files命令提示符:在所有文件上循环和运行命令
【发布时间】:2018-04-16 18:48:20
【问题描述】:

我是使用命令提示符的新手。我有大量需要在其上运行程序的 zip 文件。

在命令提示符中对其中一个文件运行程序如下所示:

Tabulate.exe -i S:\Packages\ZipFolderName_1.zip -o S:\Output\ZipFolderName_1

它会输出一个 csv。

我发现这些帖子很有帮助,但似乎无法针对我的情况实施:

Iterate all files in a directory using a 'for' loop

Loop on files and run command

【问题讨论】:

    标签: for-loop command-prompt


    【解决方案1】:

    阅读整个for /? 输出,注意~ 修饰符。在以下cmd 复合命令中使用ECHO显示 Tabulate.exe 要执行的行:

    for %I in ("S:\Packages\*.zip") do @ECHO Tabulate.exe -i %~fI -o S:\Output\%~nI
    

    要在批处理程序中使用FOR 命令,请指定%%variable 而不是%variable。变量名区分大小写,所以 %i 是 不同于%I

    @ECHO OFF
    SETLOCAL EnableExtensions
    
    for %%I in ("S:\Packages\*.zip") do (
        rem explaining comments:
        rem %~fI expands %I to a fully qualified path name
        rem %~nI expands %I to a file name only  ↓↓↓↓
        ECHO Tabulate.exe -i %%~fI -o S:\Output\%%~nI
    rem ↑↑↑↑ remove `ECHO` no sooner than debugged  
    )
    

    【讨论】:

      最近更新 更多