Відповіді:
Відкрийте термінал, введіть 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
позначає скрипт оболонки, а не "запуск сценарію в цій оболонці".