O'Reilly logo

Bash. Receptury by Cameron Newham, JP Vossen, Carl Albing

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

15.1. Przenośność skryptu — problem wiersza #!

Problem

Musimy uruchomić skrypt powłoki w kilku systemach, ale interpreter bash nie zawsze jest umieszczony w tym samym katalogu (zagadnienie to zostało również opisane w „1.11. Pobranie interpretera bash dla systemu BSD”).

Rozwiązanie

Należy wykorzystać polecenie /usr/bin/env w następujący sposób: #!/usr/bin/env bash. Jeżeli w danym systemie program env nie jest zapisany w katalogu /usr/bin, trzeba poprosić administratora, aby go tam zainstalował, przeniósł lub utworzył dowiązanie symboliczne do odpowiedniego pliku. Na przykład w systemie Red Hat plik ten domyślnie jest zapisywany w katalogu /bin (/bin/env), ale jednocześnie tworzone jest stosowne dowiązanie symboliczne.

Oczywiście, można by również ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required