W tym przewodniku sprawdź, czym jest shebang bash i jak z niego korzystać.
Szebang Bash:
W skryptach bash Shebang jest sposobem na zadeklarowanie, jakiego interpretera system operacyjny użyje do przeanalizowania reszty pliku. Shebang charakteryzuje się zestawem znaków „#!" (bez cytatów).
Oto krótki opis dyrektywy dotyczącej tłumacza Shebang.
#!Na przykład, jeśli skrypt ma być analizowany przy użyciu powłoki Bash, dyrektywa interpretera Shebang wyglądałaby tak.
#!/bin/bashDyrektywa interpretera Shebang ma pewne właściwości.
- To musi być pierwsza linijka skryptu.
- To musi się zacząć od huku (#!).
- Może, ale nie musi być spacja po shebangu (#!).
- Interpreter będzie pełną ścieżką do pliku binarnego.
- Mogą być argumenty tłumacza, ale nie muszą.
Oto krótka lista niektórych z najczęstszych dyrektyw tłumacza Shebang.
- #!/bin/bash: Skrypt zostanie przeanalizowany za pomocą grzmotnąć.
- #!/usr/bin/python: Skrypt zostanie przeanalizowany przy użyciu pyton dwójkowy.
- #!/usr/bin/env perl: Skrypt zostanie przeanalizowany przy użyciu perl wykonywalny. Lokalizacja perl plik wykonywalny zostanie dostarczony przez zazdrościć Komenda.
Korzystanie z Shebang Bash:
Skrypty nie mogą mieć bash Shebang. Każdy taki skrypt zostanie przeanalizowany przy użyciu domyślnego interpretera. Na przykład bash jest domyślnym interpreterem bash, a sh dla zsh. Podczas gdy większość systemów UNIX/Linux ma domyślnie bash, użytkownicy mają możliwość korzystania z innych. W takim scenariuszu, bez zadeklarowania interpretera, skrypt może nie wykonać swojego preferowanego zadania.
Istnieją dwie metody użycia dyrektywy Shebang do zadeklarowania interpretera. Pierwszym z nich jest zadeklarowanie ścieżki do pliku wykonywalnego.
#!/bin/bashInną metodą jest użycie zazdrościć narzędzie do lokalizacji pliku wykonywalnego.
#!/usr/bin/env bashZaletą korzystania z narzędzia env jest to, że będzie szukał pliku wykonywalnego pod zmienną środowiskową $PATH bieżącego użytkownika. '. W tym przykładzie env będzie szukał bash. Jeśli w zmiennej $PATH zadeklarowano więcej niż jeden plik wykonywalny bash, zostanie użyty pierwszy.
Jak wspomniano, Shebang bash obsługuje również argumenty wykonywalne. Na przykład, aby użyć bash w trybie debugowania, dyrektywa interpretera Shebang wyglądałaby tak.
#!/bin/bash -xJeśli chodzi o używanie zazdrościć w przypadku bash Shebang dodanie pliku wykonywalnego wymaga użycia opcji „set”. Na przykład poniższy użyje bash z włączonym trybem debugowania.
#!/usr/bin/env bash$ zestaw -x
Przykład skryptu:
Omówiliśmy podstawy basha Shebang. Czas wprowadzić to w życie. Przyjrzyjmy się realizacji basha Shebang.
Uruchom wybrany edytor tekstu i wpisz następujący skrypt:
$ #!/bin/sz$ echo "hello_world_bash"
Zapisz plik. Aby uruchomić skrypt, musi on być oznaczony jako wykonywalny. Uruchom następujące polecenie:
$ chmod +xx