Prawie każdy skrypt powłoki Linuksa zaczyna się od linii zaczynającej się od „#!”. Jest to znane jako „szebang”. Oto wszystko, co musisz o tym wiedzieć.

Być może widziałeś dziwną linię zaczynającą się od „#!" na początku skryptów Linuksa i zastanawiałem się, co to jest. Nazywa się to „linią shebang” i pozwala Linuksowi określić, którego interpretera użyć. Oto jak to działa.

Co to jest linia Shebang?

System Linux ma wiele skryptów, które automatyzują różne zadania porządkowe. Użytkownicy i administratorzy również piszą własne skrypty.

Pomimo pojawienia się popularnych języków skryptowych, takich jak Ruby czy Python, dystrybucje Linuksa są zwykle wyposażone w kilka powłok. Bash jest de facto standardem w głównych dystrybucjach, ale dostępnych jest wiele powłok.

Jest Zsh, a także powłoka C, Korn Shell i tcsh. I ryba. A potem stara, dobra skorupa Bourne'a. Tyle że w rzeczywistości Bash jest dowiązany symbolicznie do sh.

Więc nie tylko istnieją różne języki skryptowe, istnieją różne powłoki. Te powłoki mają różne składnie i polecenia. Jak powiedzieć Linuksowi, którego interpretera użyć?

To właśnie robi linia Shebang. Jest to sekwencja znaków, która rozpoczyna interpretowane skrypty. To bierze swoją nazwę od dwóch terminów slangowych dla „#" I "!" postacie. Ten pierwszy nazywa się „hash”. Być może znasz to z terminu „hashtag”.

„!” jest również znany jako huk. Połączenie tych dwóch to „szebang”, gra wyrażenia „cały szebang”.

Jak Linux ustala, którego tłumacza użyć

Możesz zauważyć, że „#Znak " to także komentarz w wielu językach. W jaki sposób system unika konfliktów? To łatwe. Większość tłumaczy języka po prostu ignoruje „#" znaki, jeśli znajdują się w pierwszej linii.

Zamiast tego jądro spojrzy na linię Shebang i przekaże skrypt do odpowiedniego interpretera.

Ustawianie linii Shebang w twoich skryptach

Poinformowanie jądra, który interpreter ma uruchomić w twoich skryptach, jest proste. Po prostu włóż bezwzględna nazwa ścieżki tłumacza, którego chcesz uruchomić, w wierszu shebang, a następnie dowolne opcje.

Na przykład, aby uruchomić skrypt Bash:

#!/bin/bash

Podaj swój skrypt wykonaj uprawnienia za pomocą chmod:

chmod +x skrypt.sh

Teraz będziesz mógł uruchomić skrypt z wiersza poleceń.

Teraz wiesz o linii Shebang

Teraz wiesz, jak działa linia shebang do uruchamiania skryptów w systemie Linux. „#!" Znaki po prostu informują jądro, który interpreter ma zostać uruchomiony. Jednym, który jest dostarczany z większością systemów Linux, jest Bash.

Pomimo popularności języków skryptowych, takich jak Python, Bash pozostaje przydatny do pisania skryptów w celu zautomatyzowania zadań administracyjnych w systemie Linux. Łatwo jest pisać i uruchamiać skrypty Bash w systemie Linux.