Vad #!/bin/bash betyder och varför du bör använda det

Senaste uppdatering: 20/08/2024
Författare: Andrés Leal

Vad betyder binbash?

Om du tar dina första steg som skriptare på Unix-operativsystem, kommer du att ha märkt hur mycket kodraden #!/bin/bash används. Att förstå deras innebörd och betydelse kan hjälpa dig att skriva mer effektiva och pålitliga Bash-skript.. I det här inlägget hittar du alla grundläggande begrepp som du behöver behärska för att förstå det bättre.

Enkelt uttryckt, #!/bin/bash-raden, även känd som "shabang" eller "hashbang", är en mekanism som talar om för operativsystemet vilket program som ska användas för att tolka koden som följer. Nu kan det vara lite förvirrande att förstå hur det fungerar eller när det är nödvändigt att använda det. Därför beskriver vi nedan dess fulla innebörd i ljuset av andra relaterade termer och begrepp.

Vad betyder #!/bin/bash? Grunderna

Vad betyder #!/bin/bash

För att förstå vad #!/bin/bash betyder är det viktigt att gå igenom några grundläggande begrepp relaterade till programmering. Det är värt att börja med att komma ihåg att Bash är en script programmeringsspråk används ofta i Unix-liknande operativsystem, som Linux och macOS. Också fungerar som en kommandoradstolk (Shell) med vilken du kan köra skript och andra filer med tillägget .sh.

När man skriver ett skript på bash-språket är det därför vanligt att starta filen med raden #!/bin/bash. Därför att? För på det här sättet operativsystemet får veta vilken kommandotolk det ska använda för att känna igen och exekvera koden. I det här specifika fallet blir du tillsagd att köra bash-filen med bash-skalet.

Exklusivt innehåll - Klicka här  API: Vad det är och vad det är till för

De flesta Unix-operativsystem använder bash-skalet som kommandotolk som standard, så det finns inget behov av att specificera det. Dock, ibland är standardskalet inte konfigurerat för bash, vilket gör det omöjligt att köra filen. Därför är det bra att använda #!/bin/bash-raden som utgångspunkt för alla skript som görs i Bash. Detta säkerställer att rätt skal exekverar skriptet, oavsett i vilken miljö det körs.

Varför kallas det en "shabang" eller "hashbang" linje?

betydelsen av #!/bin/bash

Som vi sa i början är raden #!/bin/bash känd i Unix-miljöer som "shabang" eller "hashbang". Denna term kommer från föreningen av namnen på de två första symbolerna (#!): "skarp" eller "hashtag" (#) och "bang"-symbolen (!). Så, En shabang (she-bang) i datoranvändning är sekvensen av siffertecken och utropstecken i början av ett programmeringsskript. 

I huvudsak är funktionen av en shebang tala om för operativsystemet vilken tolk som ska användas för att köra ett skript. Denna notation används ofta i Unix och Linux, där skript är viktiga för att automatisera uppgifter och hantera systemet. Några vanliga exempel på denna teckensekvens De är följande:

  • #!/bin/bash: Kör skriptet med Bash-skalet, med sökvägen /bin/bash.
  • #!/bin/sh: Kör skriptet med Bourne eller något annat kompatibelt skal.
  • #!/usr/perl-T: Kör skriptet med perl med alternativet taint checks.
  • #!/bin/csh-f: Kör skriptet med C-skalet eller något annat kompatibelt.
  • #!/usr/bin/env python: Kör skriptet med rätt version av python-tolken.
Exklusivt innehåll - Klicka här  Skillnaden mellan assembler och kompilator

Varför är det viktigt att använda shebang-raden i Bash-skript?

Programmering på macbook

När du skapar skript med Bash är det mycket viktigt att skriva shebang på den första raden i filen. Hitåt, När skriptet körs läser operativsystemet den första raden och identifierar tolken. Systemet laddar sedan bashprogrammet till minnet, som i sin tur läser skriptet rad för rad, tolkar varje kommando och utför det.

Som du kan se, Genom att indikera bash i shebang-raden säkerställer du att skriptet exekveras korrekt. Kom ihåg att det finns andra kommandotolkar, som Python och Perl, som har annan syntax och funktionalitet. Om du inte anger vilken som ska användas måste operativsystemet gissa, vilket saktar ner eller gör det omöjligt att köra skriptet. I själva verket kan du behöva ange tolken manuellt varje gång skriptet ska köras, vilket kan leda till fel.

Exklusivt innehåll - Klicka här  Skillnaden mellan enkelt arv och multipelt arv

Lägg också till raden #!/bin/bash i bash-skript låter dessa filer köras smidigt på olika operativsystem. Naturligtvis, för att detta ska vara möjligt, måste Bash-kommandotolken vara tidigare installerad på systemet. Linux och macOS har det installerat som standard i de flesta fall. Å andra sidan, om du använder Microsofts operativsystem måste du följa vissa steg för att installera Bash på Windows 10 e installera Bash på Windows 11.

Slutsats: #!/bin/bash-raden

Sammanfattningsvis kan vi säga det #!/bin/bash-raden är viktig för alla Bash-skript. Denna notation låter dig ange den kommandotolk som behövs för att exekvera följande kodrader. Glöm inte att alltid inkludera det i början av dina skript för att säkerställa att de läses och körs korrekt.