Пишу, по большей части, про историю, свою жизнь и немного про программирование.

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

Илья написал статью про то как писать службу в «Маке» на ПХП. Есть способ проще, достаточно добавить ПХП в список шелов в Автоматоре и писать скрипты прямо на нём, без вызова 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КиБ)
12 комментариев
Иван 2012

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

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

Евгений Степанищев (bolknote.ru) 2012

Комментарий для Иван:

Что-то я не пойму ваш сарказм. Запустить «Терминал», скопировать туда это и выполнить не проще, чем описанное вот здесь http://www.patrickpatoray.com/index.php?Page=112

Что вы вообще в виду-то имели?

Александр Бабаев (bealex.moikrug.ru) 2012

Преимущество написания скриптов в отдельном редакторе во всех плюшках редактора. Писать их в автоматоре как-то ой. :)

Евгений Степанищев (bolknote.ru) 2012

Комментарий для bealex.moikrug.ru:

Конечно, кто спорит-то? «require» и вперёд. Просто мне кажется неаккуратным, что ещё и bash стартует, хотя можно было бы без него обойтись.

Иван 2012

Комментарий для Евгения Степанищева:

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

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

Евгений Степанищев (bolknote.ru) 2012

Комментарий для Иван:

Это всё один раз проделать надо. И я не вижу с чем тут разбираться — там одна команда по сути, это «sed». Если для вас это слишком сложно, это не моя проблема.

warmland.ru 2012

Комментарий для Евгения Степанищева:

Я поддерживаю Ивана: предлагать читателю выполнять криптокоманду — это test of faith.

Иван 2012

Комментарий для Евгения Степанищева:

Если для вас это слишком сложно, это не моя проблема.

Разумеется, прошу прощения.

Евгений Степанищев (bolknote.ru) 2012

Комментарий для warmland.ru:

Я поддерживаю Ивана: предлагать читателю выполнять криптокоманду — это test of faith.

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

Саша Гольмаков 2012

У приведенного способа есть, на мой взгляд, существенный недостаток: подобная правка может слететь на раз-два при обновлении системы (например, при выходе новой „кошки”

Евгений Степанищев (bolknote.ru) 2012

Комментарий для Саша Гольмаков:

А ещё при очередной обновлении системы ПХП 5.3.6 (который сейчас) может обновиться до 5.4.0 и какие-то скрипты вообще перестанут работать.

Евгений Степанищев (bolknote.ru) 2012

Комментарий для Саша Гольмаков:

Этот недостаток сугубо теоретический, нужно, чтобы обновился «Автоматор», да ещё и затёр файлы конфигурации. Причём, прежние скрипты работать не прекратят.