Как добавить ПХП в список шеллов в Автоматоре

Илья написал статью про то как писать службу в «Маке» на ПХП. Есть способ проще, достаточно добавить ПХП в список шелов в Автоматоре и писать скрипты прямо на нём, без вызова bash.

Можно сделать всё по инструкции по ссылке или просто запустить вот такой скрипт в «Терминале»:

sudo sed -iE "/^<\\/idict>/,$ c\ 
$(echo H4sIAPOBM08CA4WQvQ6CMBSFZ3iKO2CAwfQBqEwyuDiAcRFjai3QiNDcVhNjfHcrEpSBuH3n3P+bO/\
Qs7jG5aiRH2RBVKUreTu7mDj1Jbjr6ZDEs9TfqUIbIenaoNiibMp4jJT2OA7OxT8lQPfTXHKUy/yZ4tWwELMCqS1\
CUwugg2yxX6zCMJkYXLQrGKwi8Q5ak2yTd+faUm78HpsGzGMIDBK/aTkTwnFzVcv+TH1C11CZ2X1wmkt1LAQAA| base64 -D | gzip -d)" \
/System/Library/Automator/Run\ Shell\ Script.action/Contents/Resources/Shells.plist

После запуска надо перезапустить «Автоматор» и в нём появится новый шелл:

ПХП-шелл в Автоматоре (24.97КиБ)

Читайте также

Скриптование меню в статус-баре
В «Маке» очень нехватает одной вещи — лёгкого создания собственных меню в статус-баре. Учить ради этого «Обжектив-Си» или «Свифт» (и ставить «ЭксКод») мне совершенно не хочется, поэтому я поискал готовое.
2017
Запись в NTFS средствами Mac OS X
Как оказалось, использование этого небезопасно, используйте только если нет другого выхода. Как известно пользователям «маков», Mac OS X умеет монтировать диски с файловой системой NTFS только на чтение.
2011

Комментарии 12

Иван № 1
sudo sed -iE «/^/,$ c\
$(echo H4sIAPOBM08CA4WQvQ6CMBSFZ3iKO2CAwfQBqEwyuDiAcRFjai3QiNDcVhNjfHcrEpSBuH3n3P+bO/\
Qs7jG5aiRH2RBVKUreTu7mDj1Jbjr6ZDEs9TfqUIbIenaoNiibMp4jJT2OA7OxT8lQPfTXHKUy/yZ4tWwELMCqS1\
CUwugg2yxX6zCMJkYXLQrGKwi8Q5ak2yTd+faUm78HpsGzGMIDBK/aTkTwnFzVcv+TH1C11CZ2X1wmkt1LAQAA| base64 -D | gzip -d)» \
/System/Library/Automator/Run\ Shell\ Script.action/Contents/Resources/Shells.plist

Что ж вы так долго молчали? Конечно, в миллион раз проще.

Александр Бабаев (bealex.moikrug.ru) № 3
Преимущество написания скриптов в отдельном редакторе во всех плюшках редактора. Писать их в автоматоре как-то ой. :)
Евгений Степанищев (bolknote.ru) автор № 4
Конечно, кто спорит-то? «require» и вперёд. Просто мне кажется неаккуратным, что ещё и bash стартует, хотя можно было бы без него обойтись.
Иван № 5
Комментарий для Евгения Степанищева:

Сарказм относился к методу в целом, конечно.

Я могу заблуждаться, но, кажется, начать сценарий Автоматора с шабанга проще чем разбираться в приведенной консольной команде (а выполнять в терминале что-то начинающееся с sudo, не разобравшись в том что это, — как минимум странно). И уж тем более проще чем выполнять последовательность действий опубликованных по ссылке которую вы привели.
Евгений Степанищев (bolknote.ru) автор № 6
Комментарий для Иван:

Это всё один раз проделать надо. И я не вижу с чем тут разбираться — там одна команда по сути, это «sed». Если для вас это слишком сложно, это не моя проблема.
warmland.ru № 7
Комментарий для Евгения Степанищева:

Я поддерживаю Ивана: предлагать читателю выполнять криптокоманду — это test of faith.
Евгений Степанищев (bolknote.ru) автор № 9
Я поддерживаю Ивана: предлагать читателю выполнять криптокоманду — это test of faith.

Там не криптокоманда, вы посмотрите внимательно.

Саша Гольмаков № 10
У приведенного способа есть, на мой взгляд, существенный недостаток: подобная правка может слететь на раз-два при обновлении системы (например, при выходе новой „кошки”
Евгений Степанищев (bolknote.ru) автор № 11
А ещё при очередной обновлении системы ПХП 5.3.6 (который сейчас) может обновиться до 5.4.0 и какие-то скрипты вообще перестанут работать.
Евгений Степанищев (bolknote.ru) автор № 12
Этот недостаток сугубо теоретический, нужно, чтобы обновился «Автоматор», да ещё и затёр файлы конфигурации. Причём, прежние скрипты работать не прекратят.