使用AppleScript或Automator从文本文件中查找和复制带有字符串的图像并将图像复制到另一个文件夹

时间:2018-12-17 23:00:25

标签: bash terminal applescript automator

这就是我想要做的:

-在一个文件夹及其所有子文件夹中的austinproductlist.txt文件中搜索第一项

-如果找到该项目,请将其复制到桌面上标记为“目标”的文件夹中

-重复.txt文件中列出的每个项目

我尝试使用终端机

$for i in `cat ~/Desktop/austinproductlist.txt’find ~/desktop/AustinWebImages -type f -name "$i" -exec cp "{}" ~/Desktop/target ;

响应: -bash:意外标记“ find”附近的语法错误

我的AppleScript尝试:

我认为问题在于该命令正在查找确切的文件名,但我需要搜索的是文件名中的字符串。如果文件名包含该字符串,我想将其复制到文件夹“ target”。

这是我的自动化尝试的屏幕截图: enter image description here

1 个答案:

答案 0 :(得分:0)

您的脚本只有两个问题:

1)您的for循环需要dodone

2)-exec操作在末尾需要反斜杠(\

尝试:

#!/bin/bash
for i in `~/Desktop/austinproductlist.txt`;
  do find ~/desktop/AustinWebImages -type f -name "$i" -exec cp "{}" target \;
done

如果您想知道后面的反斜杠; -exec操作将执行每个命令,直到;为止,由于外壳程序也使用它,因此需要对其进行转义,否则将终止find命令。

Why are the backslash and semicolon required with the find command's -exec option?