У меня есть скрипт myname.command на OSX 10.8 из какого-то приложения. Имеет Bash-скрипт с подписью (she-bang).

Какие другие форматы сценариев могут быть внутри файлов *.command ? Может, AppleScript или какой-то другой?

1 ответ1

2

В мире unix/linux (afaik Mac использует вариант unix ) вам не понадобятся какие-либо расширения файлов для программ, но хорошей практикой является предоставление сценариям bash .sh , сценариям python .py , perl и .pl (и т.д.) .) расширение для людей, чтобы идентифицировать те сценарии, не просматривая сценарий, проверяющий линию взрыва. (Я не знаю, есть ли конкретные расширения для Mac)

Важной частью является исполняемый флаг chmod +x ./myscript.sh который помечает файл как программу, которую можно выполнить.

Строка she-bang является первой строкой в файле и начинается с #! затем полный путь, указывающий на исполняемый файл /usr/bin/bash , /usr/bin/perl , /usr/bin/python .

В некоторых установках Unix/Linux вполне возможно, что python , bash или любая другая программа находится не в /usr/bin/ а в /opt/python3.6 так что she-bang #! /usr/bin/python не запустит программу. Так что, в принципе, это еще одна хорошая практика - начинать чертову линию с #!/usr/bin/env за которой следует программа, которую вы хотите запустить т.е. #!/usr/bin/env bash или #!/usr/bin/env python3 .

Это будет смотреть в среде Vars (PATH) для данной программы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .