Przejdź do treści

Centrum Kształcenia Zawodowego i Ustawicznego w Mrągowie

Sekwencja shebang

sobota,

Sekwencja shebang

Sekwencja shebang (shebang line, bang path) to sekwencja znaków na początku skryptu, informująca system, który interpreter powinien być użyty do wykonania reszty skryptu. Jej autorem był twórca języka C i współtwórca systemu Unix – Dennis Ritchie. Shebang to linia w skrypcie, która zaczyna się od #! i zawiera informację na temat ścieżki do interpretera, jaki ma być użyty do wykonania kodu. Na przykład #!/bin/bash informuje system, że skrypt powinien być uruchomiony przy użyciu interpretera Bash. Jest to bardzo istotne, ponieważ mechanizm ten pozwala skryptom być samowystarczalnymi programami. Właściwe użycie shebang może znacząco poprawić przenośność i użyteczność skryptów w różnych środowiskach.

Różne dystrybucje Linuxa mogą instalować ten sam interpreter w różnych lokalizacjach i bezpośrednie wskazanie ścieżki do interpretera może nie być przenośne między różnymi systemami. Receptą na ten problem może być zastosowanie w sekwencji shebang programu env, np. #!/usr/bin/env bash. W takim wypadku skrypt automatycznie znajduje interpreter w katalogach zawartych w zmiennej środowiskowej PATH, co zwiększa przenośność skryptu.

Przykłady użycia shebang

Bash

#!/bin/bash
echo "Witaj w świecie Bash!"

Python

#!/usr/bin/env python3
print("Witaj w świecie Pythona!")

Perl

#!/usr/bin/perl
print "Witaj w świecie Perla!\n";

Skrypt node.js

#!/usr/bin/env node
console.log("Witaj w świecie Node.js!");

Uwagi

  • Upewnij się, że używasz prawidłowej ścieżki do interpretera. Na przykład ścieżki do Bash mogą się różnić między systemami (/bin/bash, /usr/bin/bash).
  • Użyj env do zwiększenia przenośności skryptu między systemami.
  • Zawsze testuj skrypty w różnych środowiskach, jeśli planujesz ich szerokie użycie.

Trzy miesiące temu na naszej stronie…

Artykuł: Pierwszy skrypt bash

Pierwszy skrypt bash

Artykuł: Harmonogram egzaminów maturalnych

Harmonogram egzaminów maturalnych

Artykuł: Staże w Hiszpanii

Staże w Hiszpanii

Artykuł: Conformité Européenne

Conformité Européenne

Artykuł: Display Stream Compression

Display Stream Compression

Artykuł: High Dynamic Range

High Dynamic Range

Nasze technikum

Technik informatyk

Szkoły dla dorosłych

Nasza szkoła

Pełna oferta edukacyjna

Oferta szkoły