Organisering av kode i funksjoner

Bash:
Organisering av kode i funksjoner

Hvordan:

Lag en enkel funksjon i Bash:

hilsen() {
  echo "Hei, $1!"
}

Bruk den ved å kalle på funksjonen med en parameter:

hilsen "Verden"  # Utdata: Hei, Verden!

Funksjoner kan returnere verdier ved å bruke return for numeriske statuskoder (ikke for faktisk dataretur):

legg_til() {
  return $(($1 + $2))
}

legg_til 3 4
echo $?  # Utdata: 7

Merk at $? fanger opp returverdien til den siste kommandoen, som er det numeriske resultatet av legg_til.

Dypdykk

I Bash, har funksjoner vært en måte å inndele kode på siden de tidlige versjonene. Historisk sett, har bruk av funksjoner vært i tråd med prinsipper for strukturert programmering introdusert på 1960-tallet for å forbedre kodekvaliteten.

Alternativer til funksjoner inkluderer å source skriptfiler eller å bruke aliaser, men disse tilbyr ikke samme nivå av modularitet og gjenbruk.

En bemerkelsesverdig implementeringsdetalj i Bash er at funksjoner er førsteklasses borgere; de har ikke noe spesifikt deklarasjonsnøkkelord som function i andre språk, selv om function er valgfritt i Bash for lesbarhet. Funksjonens skop er også interessant – variabler er globale som standard med mindre de er erklært som lokale, noe som kan føre til uventet oppførsel hvis det ikke håndteres ordentlig.

Se også