用另一个图像替换文件夹中的所有图像但保留文件名

时间:2018-02-05 18:02:27

标签: bash terminal

OSX终端中是否有办法用另一个图像替换文件夹中的所有图像(它们都有增量文件名),但保留原始文件名?

我已经谷歌搜索了很长时间但没有找到任何有用的东西。

例如,以下文件需要替换:

1.jpg
239.jpg
213.jpg
5678.jpg

我需要文件名保持不变,但要说default.jpg覆盖图像,然后重命名以匹配刚刚替换的图像。所以在理论上:

n = file
x = filename
default = c://download/default.jpg
folder = c://downloads

For each n in folder
    x = get filename
    copy default to folder
    delete n
    rename default to x
Loop

那么它会以编程方式用新图像替换所有文件吗?

我真的不知道从哪里开始?

2 个答案:

答案 0 :(得分:2)

也许:

for i in *.jpg
do 
  cp default.jpg "$i"
done

这将发出一次错误(当处理default.jpg时),但应该完成这项工作。

答案 1 :(得分:0)

好的,所以我稍微调整了一下代码并让它运行没有错误。例如:

for i in /Users/User/downloads/listings/m/folder4/newfolder/*.jpg; do cp -R /Users/User/downloads/listings/m/folder4/newfolder/default.jpg "$i"; done

以防万一其他人需要这样做。感谢您的评论并指出我正确的方向。

此致 d