我想在Linux脚本中创建一个循环,它将通过一个目录中的文件夹,并将照片复制到一个文件夹,并覆盖具有相同名称的照片。有人能指出我的写作方向吗?
答案 0 :(得分:3)
find /path/to/source -type f -exec cp -f {} /path/to/destination \;
那会有用吗?请记住,这将覆盖文件而不会询问。
如果您希望在覆盖之前与您确认,请在cp
命令中使用-i标志(用于交互模式)。
答案 1 :(得分:0)
find /path/to/source -type f | xargs -I {} file {} | grep <JPEG or image type> | cut -d ":" -f1 | xargs -I {} cp -rf {} /path/to/destination
通过此功能,您可以选择仅选择图像类型来调整副本。
答案 2 :(得分:0)
实际上,您无需循环浏览文件夹以使用脚本查找照片,find
命令将为您完成这项工作。
尝试将find
与xargs
和cp
find source_dir -type f -iname '*.jpg' -print0 | xargs -0 -I {} cp -f {} dest_dir
将*.jpg
替换为照片文件的格式。 (例如*.png
等。)
请注意使用-f
的{{1}}选项,因为您要覆盖同名照片