Вы можете думать о fileNames как о массиве, но может быть проще представить, что с точки зрения оболочки, это всего лишь список.
вам нужно сделать скрипт типа
$ cat myKeyWords.sh
#! /bin/bash -vx
for file in "${@}" ; do
exiftool Keywords="${myKeyWord}" "${file}"
done
После того, как вы создали файл, вам нужно сделать так, чтобы система имела разрешение на его запуск.
сделать chmod 755 myKeyWords.sh
. Вы должны поместить этот скрипт в каталог, о котором знает ваш инструмент Automater или который находится в PATH. Сделайте echo $PATH
, чтобы увидеть, какие значения там. Если есть такой, который называется /usr/local/bin
, это, вероятно, лучшее место для размещения вашего нового скрипта.
Вам нужно будет обратиться к сообщению в блоге о том, как передать значение ключевых слов из Automater в ваш сценарий оболочки. Если вам повезет, это сработает.
В этом сценарии включен режим отладки оболочки (-vx
в первой строке). Вы должны быть в состоянии увидеть, что происходит внутри скрипта, так как отладка покажет, что выполняется для каждого (ну, большинство) шагов в скрипте.
Я бы порекомендовал убедиться, что скрипт работает сам по себе, прежде чем использовать его в Automator. Откройте окно терминала и настройте его следующим образом:
export Keyword=xxxxx
myKeywords.sh file1 file2 file3 ...
Когда он работает именно так, как вам нужно, вы можете удалить -vx
в первой строке скрипта.
Этот сценарий также предполагает, что в вашей системе доступно /bin/bash
, измените это значение, если необходимо, чтобы запустить доступную оболочку, /bin/sh, /bin/ksh, /bin/zsh
, вам может потребоваться изменить путь с /bin/
на /usr/bin
, чтобы найти оболочки .
Я не думаю, что вы хотите использовать ключевые слова + = "$ myKeywordsString", так как это будет увеличивать значение ключевых слов каждый раз, когда сценарий проходит через это назначение. Вы можете подтвердить это, посмотрев на вывод в режиме отладки.
Надеюсь, это поможет.
P.S. поскольку вы выглядите новым пользователем, если вы получите ответ, который поможет вам, не забудьте пометить его как принятый и / или дать ему + (или -) в качестве полезного ответа.