Næsten hvert Linux-shell-script begynder med en linje, der starter med "#!". Dette er kendt som "shebang". Her er alt, hvad du behøver at vide om det.

Du har måske set en mærkelig linje, der starter med et "#!" i begyndelsen af ​​Linux-scripts og spekulerede på, hvad det var. Det kaldes "shebang-linjen", og det giver Linux mulighed for at fortælle, hvilken tolk der skal bruges. Sådan fungerer det.

Hvad er Shebang-linjen?

Et Linux-system har mange scripts, der automatiserer forskellige husholdningsopgaver. Brugere og administratorer skriver også deres egne scripts.

På trods af fremkomsten af ​​populære scriptsprog som Ruby eller Python, kommer Linux-distributioner også typisk udstyret med flere skaller. Bash er en de facto standard på mainstream distros, men der er masser af skaller tilgængelige.

Der er Zsh, såvel som C shell, Korn Shell og tcsh. Og fisk. Og så den gode gamle Bourne-skal. Bortset fra at det faktisk er Bash symlinket til sh.

Så der er ikke kun forskellige scriptsprog, der er forskellige skaller. Disse skaller har forskellige syntakser og kommandoer fra hinanden. Hvordan fortæller du Linux, hvilken tolk der skal bruges?

instagram viewer

Dette er, hvad shebang-linjen gør. Det er en tegnsekvens, der starter fortolkede scripts. Det tager sit navn fra to slangudtryk for "#"og"!" tegn. Førstnævnte kaldes en "hash". Du kender det måske fra udtrykket "hashtag".

Det "!" er også kendt som et brag. Kombinationen af ​​de to er en "shebang", et spil med sætningen "hele shebang".

Hvordan Linux finder ud af, hvilken tolk der skal bruges

Du bemærker måske, at "#" karakter er også en kommentar på mange sprog. Hvordan undgår systemet konflikter? Det er nemt. De fleste sprogtolke ignorerer simpelthen "#" tegn, hvis de er på den første linje.

Kernen vil i stedet se på shebang-linjen og videregive scriptet til den relevante fortolker.

Indstilling af Shebang-linjen i dine scripts

Det er enkelt at fortælle kernen, hvilken fortolker der skal køre i dine scripts. Bare læg det absolutte stinavn af den tolk, du vil køre i shebang-linjen, efterfulgt af eventuelle muligheder.

For at køre et Bash-script for eksempel:

#!/bin/bash

Giv dit manuskript udfør tilladelser ved at bruge chmod:

chmod +x script.sh

Du vil nu være i stand til at køre dit script fra kommandolinjen.

Nu ved du om Shebang-linjen

Nu ved du, hvordan shebang-linjen fungerer til at køre scripts i Linux. Det "#!"-tegn fortæller simpelthen kernen, hvilken fortolker den skal køre. En, der kommer med de fleste Linux-systemer, er Bash.

På trods af populariteten af ​​scriptsprog som Python, forbliver Bash nyttig til at skrive scripts til at automatisere Linux-administrationsopgaver. Det er nemt at skrive og køre Bash-scripts på Linux.