Hva #!/bin/bash betyr og hvorfor det bør brukes

Siste oppdatering: 20/08/2024
Forfatter: Andrés Leal

Hva betyr binbash?

Hvis du tar dine første skritt som scripter på Unix-operativsystemer, vil du ha lagt merke til hvor mye kodelinjen #!/bin/bash brukes. Å forstå betydningen og betydningen deres kan hjelpe deg med å skrive mer effektive og pålitelige Bash-skript.. I denne oppføringen finner du alle de grunnleggende konseptene du trenger å mestre for å forstå det bedre.

Enkelt sagt, #!/bin/bash-linjen, også kjent som "shabang" eller "hashbang", er en mekanisme som forteller operativsystemet hvilket program som skal brukes til å tolke koden som følger. Nå kan det være litt forvirrende å forstå hvordan det fungerer eller når det er nødvendig å bruke det. Derfor beskriver vi nedenfor dens fulle betydning i lys av andre relaterte termer og konsepter.

Hva betyr #!/bin/bash? Grunnleggende

Hva betyr #!/bin/bash

For å forstå hva #!/bin/bash betyr, er det viktig å gå gjennom noen grunnleggende konsepter knyttet til programmering. Det er verdt å begynne med å huske at Bash er en script programmeringsspråk mye brukt i Unix-lignende operativsystemer, som Linux og macOS. Også fungerer som en kommandolinjetolk (Shell) som du kan kjøre skript og andre filer med filtypen .sh med.

Derfor, når du skriver et skript på Bash-språket, er det vanlig å starte filen med linjen #!/bin/bash. Fordi? Fordi på denne måten operativsystemet blir fortalt hvilken kommandotolk det skal bruke for å gjenkjenne og utføre koden. I dette spesielle tilfellet blir du bedt om å kjøre bash-filen med bash-skallet.

Eksklusivt innhold - Klikk her  Hvordan kan jeg programmere raskere? Praktiske tips

De fleste Unix-operativsystemer bruker bash-skallet som kommandotolk som standard, så det er ikke nødvendig å spesifisere det. Imidlertid noen ganger er standardskallet ikke konfigurert for bash, som gjør det umulig å kjøre filen. Derfor er det god praksis å bruke #!/bin/bash-linjen som utgangspunkt for alle skript laget i Bash. Dette sikrer at det riktige skallet kjører skriptet, uavhengig av miljøet det kjøres i.

Hvorfor kalles det en "shabang" eller "hashbang" linje?

betydningen av #!/bin/bash

Som vi sa i begynnelsen, er linjen #!/bin/bash kjent i Unix-miljøer som "shabang" eller "hashbang". Dette begrepet oppstår fra foreningen av navnene til de to første symbolene (#!): "skarp" eller "hashtag" (#) og "bang"-symbolet (!). Så, En shabang (she-bang) i databehandling er sekvensen av talltegnet og utropstegn i begynnelsen av et programmeringsskript. 

I hovedsak er funksjonen til en shebang fortell operativsystemet hvilken tolk som skal brukes til å utføre et skript. Denne notasjonen er mye brukt i Unix og Linux, hvor skript er avgjørende for å automatisere oppgaver og administrere systemet. Noen vanlige eksempler på denne tegnsekvensen De er som følger:

  • #!/bin/bash: Kjør skriptet ved å bruke Bash-skallet, med banen /bin/bash.
  • #!/bin/sh: Kjør skriptet med Bourne eller et annet kompatibelt skall.
  • #!/usr/perl-T: Kjør skriptet med perl med taint checks-alternativet.
  • #!/bin/csh-f: Kjør skriptet ved å bruke C-skallet eller et annet kompatibelt.
  • #!/usr/bin/env python: Kjør skriptet med riktig versjon av python-tolken.
Eksklusivt innhold - Klikk her  Spyder Python IDE: En nybegynnerveiledning til Python-programmering

Hvorfor er det viktig å bruke shebang-linjen i Bash-skripting?

Programmering på macbook

Når du lager skript med Bash, er det veldig viktig å skrive shebang på den første linjen i filen. På denne måten, Når du kjører skriptet, leser operativsystemet den første linjen og identifiserer tolken. Systemet laster deretter bash-programmet inn i minnet, som igjen leser skriptet linje for linje, tolker hver kommando og utfører den.

Som du kan se, Ved å indikere bash i shebang-linjen sikrer du at skriptet blir utført på riktig måte. Husk at det er andre kommandotolkere, som Python og Perl, som har forskjellig syntaks og funksjonalitet. Hvis du ikke spesifiserer hvilken du skal bruke, må operativsystemet gjette, noe som bremser eller gjør det umulig å kjøre skriptet. Faktisk kan det hende du må spesifisere tolken manuelt hver gang skriptet skal kjøres, noe som kan føre til feil.

Eksklusivt innhold - Klikk her  Forskjeller mellom symmetrisk og asymmetrisk kryptering: hvordan beskytte dataene dine riktig

Legg også til linjen #!/bin/bash i bash-skript lar disse filene kjøre jevnt på forskjellige operativsystemer. Selvfølgelig, for at dette skal være mulig, må Bash-kommandotolken være installert på systemet på forhånd. Linux og macOS har det installert som standard i de fleste tilfeller. På den annen side, hvis du bruker Microsoft-operativsystemet, må du følge visse trinn for å installer Bash på Windows 10 e installer Bash på Windows 11.

Konklusjon: #!/bin/bash-linjen

Avslutningsvis kan vi si det #!/bin/bash-linjen er viktig for alle Bash-skript. Denne notasjonen lar deg indikere kommandotolken som er nødvendig for å utføre følgende kodelinjer. Ikke glem å alltid inkludere det i begynnelsen av skriptene dine for å sikre korrekt lesing og utførelse.