Я хотел бы автоматизировать процесс установки моего Mac для сервисов. Вот мой сценарий:
#!/bin/sh
rm -rf ./tempWorkflows
mkdir tempWorkflows
for filename in ./*.workflow; do
cp -R "$filename" ./tempWorkflows/"$filename"
done
for filename in ./tempWorkflows/*.workflow; do
open $filename
done
rm -rf ./tempWorkflows
Это в основном скопировать все мои *.workflow
и открыть его. Тем не менее, open $filename
он запрашивает и запрашивает подтверждение:
Есть ли способ добавить --no-prompt
или подобный флаг для команды открытия?
РЕДАКТИРОВАТЬ:
Я использую El Capitan 10.11.3
osascript
, добавив несколько строк послеopen $filename
строки. Если вам интересно, я создам для него ответ, однако у меня нет OS X 10.11, хотя это работает в OS X 10.10, оно также должно работать в OS X 10.11. Дай мне знать.$filename
вopen "$filename"
в случае , если любой из ваших Automator служб.workflow
файлов имеют пробелы в именах.Ответы:
Если Automator закрыт, откройте Automator и выберите « Приложение» в разделе « Выберите тип документа» , затем нажмите кнопку « Выбрать» . Если он уже открыт, выберите « Файл» > « Создать» и выберите « Приложение» в разделе « Выберите тип документа» .
Добавьте к нему действие сценария запуска оболочки .
Скопируйте и вставьте код оболочки вы в настоящее время есть в Run Shell Script действий .
Добавьте следующие строки кода после:
open $filename
Примечание: Вы также должны добавить соответствующую
cd
строку надrm -rf ./tempWorkflows
строкой, которая у вас есть в вашем коде , например,cd /some/directory/path
где это путь к.workflow
папке, в которой находятся ваши файлы для обработки вашим скриптом .Сохраните приложение Automator в качестве службы установки Install Automator . Следующий:
Откройте Системные настройки > Безопасность и конфиденциальность > Специальные возможности > Конфиденциальность
Нажмите значок блокировки, чтобы внести изменения и введите свой пароль, затем нажмите кнопку разблокировки .
Используйте [+], чтобы добавить службу Install Automator, или перетащите пакет приложений в окно. Теперь это позволит приложению Install Automator Service запускать код вашей оболочки и использовать код AppleScript для нажатия кнопки Install и последующей кнопки Done в диалоговом окне Service Installer в процессе установки ваших Служб .
источник