Я на OSX Snow Leopard.
Вот полное содержание grr.sh
:
#!/bin/sh
echo wow
Когда я пытаюсь запустить его из терминала:
$ grr.sh
-bash: grr.sh: command not found
$ /bin/sh grr.sh
wow
$ sh grr.sh
wow
$ bash grr.sh
wow
Ладно. Справедливо. Я дам ему исполняемое разрешение, затем попробую еще раз:
$ chmod +x grr.sh
$ grr.sh
-bash: grr.sh: command not found
$ chmod 755 grr.sh
$ grr.sh
-bash: grr.sh: command not found
Хммм. Может быть, это сработает, если я использую bash явно? Я изменю содержимое файла на:
#!/bin/bash
echo wow
И я получаю точно такие же результаты. Что я мог сломать ?!
Одна последняя вещь! Если вам любопытно ...
$ which sh
/bin/sh
Расположение grr.sh в
$PATH
переменной? Если нет, вам нужно будет ввести:если вы находитесь в той же папке, что и grr.sh. Если нет, то укажите полный путь к нему.
источник
разрешения для файла неверны. Попробуйте следующие команды:
источник
Да, и что ./grr.sh означает, что в этом каталоге выполните команду grr.sh. Сингл. значит в рабочем каталоге. В противном случае ваша оболочка предполагает, что вы пытаетесь запустить команду в вашем $ PATH.
источник