#bash #macos-sierra #automator #finder
Вопрос:
У меня есть служба автоматизации, использующая скрипт оболочки для создания символических ссылок для файлов/папок, выбранных в Finder. Но есть ли какой-то способ, которым я мог бы также заставить его выбирать символические ссылки, созданные в Finder после их создания?
Вот сценарий, запускаемый как /bin/bash:
for f in "$@"
do ln -s "$f" "${f}.deleteThisExtensionAfterMoving"
done
Надеюсь, есть способ сделать это. Если кто-нибудь знает, как это сделать, пожалуйста, ответьте и дайте мне знать. Спасибо!
Комментарии:
1. Сработает ли это
Reveal Finder Items
действие?2. Не уверен. Но я также не понял, как вернуть список имен файлов, созданных этим сценарием, чтобы они передавались на любые другие шаги после этого в рабочем процессе automator.
3. Результат
Run Shell Script
действия — это то, что передается следующему действию. Если команды ничего не возвращают, вы можете просто повторить элемент(это все, что делает скрипт по умолчанию).4. я думаю, что когда я запускаю его, я получаю входные файлы, возвращаемые из сценария оболочки, вместо файлов символических ссылок, которые он создает. как бы я повторил созданные файлы, которые будут возвращены для этого сценария? может быть, представить это в качестве ответа?
Ответ №1:
ln
Команда не возвращает путь к созданной ссылке, но скрипт может echo
указать путь к ссылке, чтобы ее можно было передать следующему действию. В следующем примере рабочего процесса будут показаны созданные ссылки в Finder (обратите внимание, что обработка ошибок отсутствует).:
Попросите предметы поиска (или что-то еще)
Запустите сценарий оболочки {передайте входные данные в качестве аргументов}
for f in "$@"
do
ln -s "$f" "${f}.deleteThisExtensionAfterMoving"
echo "${f}.deleteThisExtensionAfterMoving"
done
Показать Элементы Поиска