如果我有:
Images
1234
base.jpg
small.jpg
5678
base.jpg
9012
base.jpg
3456
base.jpg
small.jpg
我想运行一个命令来浏览这个dir结构,找到base.jpg并将它复制为small.jpg如果small.jpg不存在于同一个目录中。我有大约1700+ dir这些图像,我想要任何一个没有小的目录,以复制和重命名base.jpg。
任何命令?
答案 0 :(得分:6)
如何将find
与execdir
一起使用:
find Images -name "base.jpg" -execdir cp -n {} small.jpg \;
在Images
目录中搜索名称为base.jpg
的文件。对于找到的每个文件,它会尝试将其复制到同一目录中名为small.jpg
的文件中。 -n
切换到cp
会阻止现有文件被覆盖。