Відповіді:
Відкрийте термінал, введіть sh /path/to/fileі натисніть клавішу Enter.
Швидше ввести shта пробіл, а потім перетягнути файл у вікно та відпустити піктограму в будь-якому місці вікна.
shell shell_scriptлінія shebang ігнорується. Оболонка читає перший рядок як коментар.
sh /path/to/fileсемантично відрізняється від альтернативної /path/to/file.sh?
Крім того, ви могли також зробити
cd /directory/with/executable
chmod +x executable # only required if your file is not already executable
./executable
який також запустить виконуваний файл із вказаною оболонкою (якщо вказано в шебангу) #!/bin/(shell)
chmod u+x myfile.sh
cp myfile.sh /usr/local/bin
відредагуйте ~/.bash_profileта додайте наступний рядок:
alias myfile=./myfile.sh
виконати такий командний рядок:
source ~/.bash_profile
тоді ви зможете запустити файл як програму
$ myfile
#~/bin/sh, тоді як у OSXсценарії має бути .shрозширення та а aliasдля кожного з них. : -O
Для запуску файлів сценарію виконайте наступні дії:
Клацніть правою кнопкою миші на файл .sh.
Наведіть курсор на Open With .
Виберіть Інші ... .
Ви повинні знаходитись у папці Програми . Відкрийте папку Utilities і виберіть Terminal.app.
Якщо ви не можете вибрати Terminal.app, змініть увімкнені програми з Рекомендовані програми на Усі програми . Це внизу вікна.
Якщо ви хочете відкрити кожен .shфайл за допомогою Terminal.app, поставте галочку Завжди відкривати .
Натисніть кнопку Відкрити в нижньому правому куті вікна.
Причиною не працює після завантаження є те, що дозволи файлів не дозволяють. Щоб увімкнути дозволи на виконання, відкрийте Terminal та введіть
chmod 755 /path/to/script. Замість того, щоб вводити повний шлях, ви можете перетягнути скрипт у вікно терміналу з Finder. Потім для виконання просто введіть
/path/to/script. Знову ж таки, ви можете перетягнути файл на вікно терміналу. Цей синтаксис повинен виконати сценарій, використовуючи правильну оболонку, як визначено в першому рядку сценарію.
shпозначає скрипт оболонки, а не "запуск сценарію в цій оболонці".