You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写带起止变量的终端循环命令批量转换GoPro RAW图像?

批量转换GoPro RAW(GPR)文件的循环脚本

当然可以编写循环脚本批量处理连续编号的GPR文件,以下是针对不同操作系统的实现方案:

Linux/macOS(Bash脚本)

创建一个名为convert_gpr.sh的文件,内容如下:

#!/bin/bash
# 设置需要处理的文件编号范围
START=28513
END=33512
# 替换为你的实际文件路径
SOURCE_DIR="/path/to/gpr/files"
OUTPUT_DIR="/path/to/save/dng/files"

# 遍历编号范围
for (( num=START; num<=END; num++ ))
do
    input_file="${SOURCE_DIR}/G00${num}.GPR"
    output_file="${OUTPUT_DIR}/G00${num}.DNG"
    
    # 仅处理存在的文件,避免无效操作
    if [ -f "$input_file" ]; then
        gpr_tools -i "$input_file" -o "$output_file"
        echo "转换完成: $input_file → $output_file"
    else
        echo "文件不存在,跳过: $input_file"
    fi
done

使用方法:

  • 修改SOURCE_DIR和OUTPUT_DIR为实际路径
  • 给脚本添加执行权限:chmod +x convert_gpr.sh
  • 运行脚本:./convert_gpr.sh

Windows(批处理脚本)

创建一个名为convert_gpr.bat的文件,内容如下:

@echo off
setlocal enabledelayedexpansion
:: 设置需要处理的文件编号范围
set START=28513
set END=33512
:: 替换为你的实际文件路径
set SOURCE_DIR=C:\path\to\gpr\files
set OUTPUT_DIR=C:\path\to\save\dng\files

:: 遍历编号范围
for /l %%n in (%START%,1,%END%) do (
    set input_file=!SOURCE_DIR!\G00%%n.GPR
    set output_file=!OUTPUT_DIR!\G00%%n.DNG
    
    :: 仅处理存在的文件
    if exist "!input_file!" (
        gpr_tools -i "!input_file!" -o "!output_file!"
        echo 转换完成: !input_file! → !output_file!
    ) else (
        echo 文件不存在,跳过: !input_file!
    )
)
endlocal
pause

使用方法:

  • 修改SOURCE_DIR和OUTPUT_DIR为实际路径
  • 双击运行convert_gpr.bat即可

注意事项

  • 确保gpr_tools已添加到系统环境变量,或者在脚本中使用工具的完整路径(例如/usr/local/bin/gpr_tools或C:\tools\gpr_tools.exe)
  • 如果编号格式有变化(比如前缀不是G00),只需修改脚本中文件名拼接的部分即可

内容的提问来源于stack exchange,提问作者Jayden Lawson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 01:50:09