Jestem na OSX Snow Leopard.
Oto pełna treść grr.sh
:
#!/bin/sh
echo wow
Kiedy próbuję uruchomić go z terminala:
$ grr.sh
-bash: grr.sh: command not found
$ /bin/sh grr.sh
wow
$ sh grr.sh
wow
$ bash grr.sh
wow
W porządku. Słusznie. Daję mu uprawnienia do wykonywania, a następnie spróbuj ponownie:
$ chmod +x grr.sh
$ grr.sh
-bash: grr.sh: command not found
$ chmod 755 grr.sh
$ grr.sh
-bash: grr.sh: command not found
Hmmm. Może zadziała, jeśli użyję basha jawnie? Zmienię zawartość pliku na:
#!/bin/bash
echo wow
I otrzymuję dokładnie takie same wyniki. Co mogłem złamać ?!
Ostatnia rzecz! Jeśli jesteś ciekawy ...
$ which sh
/bin/sh
Czy lokalizacja grr.sh w
$PATH
zmiennej? Jeśli nie, musisz wprowadzić:jeśli jesteś w tym samym folderze co grr.sh. Jeśli nie, podaj pełną ścieżkę do niego.
źródło
uprawnienia do pliku są nieprawidłowe. Wypróbuj następujące polecenia:
źródło
Tak, a co oznacza ./grr.sh, oznacza to, że w tym katalogu uruchom polecenie grr.sh. Pojedynczy . oznacza w katalogu roboczym. W przeciwnym razie twoja powłoka zakłada, że próbujesz uruchomić polecenie w $ PATH.
źródło