复制并替换子文件夹中相同名称的文件

时间:2014-09-28 19:11:31

标签: macos applescript osx-mavericks automator

我有一个包含一组图片的文件夹,需要将这些文件复制到另一个文件夹中,在那里替换任何相同的名称。目标文件夹中的图像位于子文件夹中。

我认为我能做的就是把我的图像列表拖到另一个查找器窗口中,该窗口已经过滤到只会被替换的文件(绕过有效的子文件夹结构),但我猜osx没有&#39 ; t允许那种复制/替换。

所以我希望用automator / applescript来解决这个问题。子文件夹位是什么让我在automator - 任何帮助表示赞赏。

example:
source_folder/file_1.jpg
source_folder/file_2.jpg
source_folder/file_3.jpg
etc...

Should copy/overwrite targets:
target_folder/subfolder_234/file_2.jpg
target_folder/subfolder_122/file_1.jpg
target_folder/subfolder_425/file_3.jpg
etc...

1 个答案:

答案 0 :(得分:2)

此脚本获取源文件夹中的文件,对于每个文件名,它在目标文件夹的子文件夹中搜索同名文件,cp命令复制并替换。

set sFolder to quoted form of POSIX path of (choose folder with prompt "Select the source folder")
set tFolder to quoted form of POSIX path of (choose folder with prompt "Select the target folder")
do shell script "find " & sFolder & " -maxdepth 1 -type f ! -name '.*' -print0 | while read -d $'\\0' f; do name=${f##*/}; find " & tFolder & " -type f -name \"$name\" -maxdepth 2 -mindepth 2 -exec cp -pf \"$f\" '{}' \\;;done"