Osascript не выполняется — возвращает пустой массив

У меня есть команда exec () в моем коде, которая запускает яблочный скрипт с рабочего стола

$cmd = "osascript /Users/***/Desktop/script.app";
exec($cmd, $output);
print_r($output);

На одном компьютере он работает без ошибок, на втором — пустой массив. Они находятся точно в одном каталоге, кроме имени пользователя, которое я изменил на правильное. Я также проверил права доступа к файлам.

Я был бы признателен, если бы кто-то мог пролить свет на этот.

0

Решение

PATH то, что исполняемые скрипты могут отличаться на двух машинах.

Исполняемый файл osascript живет по адресу:

/usr/bin/osascript

Я думаю, что машина, которая работает, включает в себя /usr/bin в PATHи тот, который не работает, не включает его.

TL; DR

Дайте полный путь:

$cmd = "/usr/bin/osascript /Users/***/Desktop/script.app";
exec($cmd, $output);
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]