我使用了 Byte Commander 的优秀脚本 如何转换嵌套文件夹中的所有视频文件?(批量转换)
但我有两个问题。
1)是否可以完全镜像源文件夹和目标文件夹?(扫描/videos/下的所有子文件夹并在同一架构中复制调整大小的视频
/视频/2019/01 => /resized_video/2019/01
/视频/2019/02 => /resized_video/2019/02
/videos/2019/03/周年纪念/ => /resized_video/2019/03/周年纪念
ETC...
2)如果目标文件存在,是否可以跳过转换(这样我可以每月“同步”一次原始文件夹和调整大小的文件夹,而不必再次转换现有视频)
非常感谢你的帮助
吉吉克
答案1
对于第一个问题:
yes n | cp -i -r videos/ resized_video/
videos
它会在中制作一个精确的镜像,resized_video
如果存在同名文件,它就不会更新它。
对于后者 :
for i in videos/**/*.{mp4,avi,mts,and_whatever_format_you_want}
do
if [ -f resized_video/$i ]
then
echo File $i exists. Skip resizing
else
do_resizing_and_moving
fi
done
仅当不存在同名文件时,它才会将视频添加到videos
。resized_videos
如果有人有改进建议,我很高兴听取。