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.

Artykuł: Światowy Dzień Książki i Praw Autorskich

Światowy Dzień Książki i Praw Autorskich

Artykuł: Hiszpańska przygoda

Hiszpańska przygoda

Artykuł: Certyfikaty bezpieczeństwa dla zasilaczy komputerowych

Certyfikaty bezpieczeństwa dla zasilaczy komputerowych

Artykuł: DRAM Speculative Leadoff

DRAM Speculative Leadoff

Artykuł: Burst Mode DMA

Burst Mode DMA

Nasze technikum

Technik informatyk

Szkoły dla dorosłych

Nasza szkoła

Pełna oferta edukacyjna

Oferta szkoły