【问题标题】:Batch copy rename and resize images批量复制重命名和调整图像大小
【发布时间】:2014-07-16 10:11:54
【问题描述】:

我有一个包含 1000 张图片的文件夹,所有图片都具有不同的名称,需要使用 Windows 中的命令行从原始文件创建不同大小的图片。

Images¬
       HC001¬
             HC001.jpg
       HC002¬
             HC002.jpg
       HC003¬
             HC003.jpg
       HX001¬
             HX001.jpg

我想做的是拥有

Images¬
       HC001¬
             HC001.jpg
             HC001-1920x1080.jpg
             HC001-1024x768.jpg
       HC002¬
             HC002.jpg
             HC002-1920x1080.jpg
             HC002-1024x768.jpg
       HC003¬
             HC003.jpg
             HC003-1920x1080.jpg
             HC003-1024x768.jpg
       HX001¬
             HX001.jpg
             HX001-1920x1080.jpg
             HX001-1024x768.jpg

我的想法是首先复制图像尝试复制每个文件夹中的图像,然后用大小重命名它们。

然后运行一个单独的脚本来查找大小前缀并调整为那个大小。

这是最有效的方法还是可以使用批处理脚本一次完成。

到目前为止,我有 for /d /r %%a in (*.) do echo "%%a" 显示文件夹列表,但我现在很难打开文件夹来搜索 .jpg 文件。

欢迎任何帮助,因为我是批处理文件的新手。

【问题讨论】:

  • Irfanview 有一个命令行模式,这可以使用它和一个批处理脚本来完成。
  • 你也可以使用imagemagik

标签: batch-file rename batch-processing xcopy batch-rename


【解决方案1】:

您可以尝试使用scale.bat(无需安装外部二进制文件):

for /d /r "c:\Images" %%i in (*) do (
  if exist "%%~fi\%%~ni.jpg" (
    call scale.bat -source "%%~fi\%%~ni.jpg" -target "%%~fi\%%~ni-1920x1080.jpg" -max-width 1920 -max-height 1080 -keep-ratio no -force yes
    call scale.bat -source "%%~fi\%%~ni.jpg" -target "%%~fi\%%~ni-1024x768.jpg" -max-width 1024 -max-height 768 -keep-ratio no -force yes
  )
)

很可能你已经安装了powershell,所以你也可以检查this

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-11
    • 1970-01-01
    • 2018-12-22
    • 1970-01-01
    • 2018-09-23
    • 2012-07-17
    • 2016-10-29
    相关资源
    最近更新 更多