【问题标题】:Command line multiple commands in for loopfor循环中的命令行多个命令
【发布时间】:2023-03-20 21:00:01
【问题描述】:

我需要 windows 命令行来查找所有以 .jpg.pdf 结尾的文件并删除 .jpg 部分,所以最后它会是纯 .pdf,我有以下行:

for /R %DIR% %%i in (*.jpg.pdf) do set without=%i:~0,-8% & rename %%i "%%without.pdf"

它应该删除最后 8 个字符,然后用 .pdf 扩展名重命名文件,因为某种原因它创建的没有变量,内容为 '~0,-8without'

知道如何在一个 for 循环中执行这两个命令吗? '&' 出于某种原因无法解决问题......

【问题讨论】:

    标签: for-loop command-line arguments


    【解决方案1】:
    for /R %DIR% %%i in (*.jpg.pdf) do ECHO rename "%%i" "%%~ni"
    

    %%~ni 只是文件的名称部分,即减去驱动器、路径和最终扩展名的部分。

    请注意,此行只是 ECHOes 重命名命令。验证后,去掉ECHO关键字,才真正进行重命名。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-26
      • 2017-03-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-24
      • 1970-01-01
      相关资源
      最近更新 更多