我的文件夹包含许多不同路径中的文件,例如:folder1 / subfolder1 / file.mov 文件夹1 / subfolder2 / file.mov
我需要将所有文件转换并复制到另一种格式,并保存文件夹1之后的所有路径,例如: 文件夹2 / subfolder1 / file.mp4 文件夹2 / subfolder2 / file.mp4
我有这个脚本,但它将转码后的文件保存在原始位置。
#!/bin/bash
MOVIES=/Volumes/drive/
find "$MOVIES" -name '*.MP4' -exec sh -c 'ffmpeg -i "$0" -map 0 -c copy "${0%%.MP4}.mov"' {} \; exit;
请帮忙 谢谢!
答案 0 :(得分:0)
将部分"${0%%.MP4}.mov"
替换为"folder2/$(dirname ${0#*/})/$(basename $0 .MP4).mov"
。这不会容忍在路径上留有空格的MP4。
ffmpeg是否创建了目录?如果没有,请在ffmpeg之前插入:
mkdir -p "folder2/$(dirname ${0#*/})";