Bash giver dig mulighed for at kortlægge hele tekststrenge til enkelte variabler, hvilket forenkler brugen og scriptskrivningen. Hvordan fungerer de, og hvordan kan du bruge dem? Lad os finde ud af det.
Hvad er en variabel?
Variabler er navne, der er nemme at huske, og som kan indeholde forskellige alfanumeriske værdier. De er nyttige, fordi de tillader, at den samme funktion anvendes på forskellige værdier uden at skulle omskrive et script/kodestykke. De gør det også nemt at skrive scriptet/kodestykket, da du i stedet for at beskæftige dig med individuelle værdier kan bruge det samme navn til dem alle.
Realtidsvariabler
Bash tillader brugen af variabler. Du kan oprette variabler på farten og genbruge dem under din nuværende Bash-session. De kan hjælpe din brug af Bash på mange forskellige måder, og de vil være væk, når den aktuelle session slutter.
Lad os f.eks. sige, at du besøger en masse websteder. Du kan lave research eller skrabe data. Du kan oprette følgende variabel:
sitea=https://www.maketecheasier.com
Hvis du derefter vil besøge vores side med Firefox, kan du bare skrive:
firefox $sitea

Meget nemmere – og mere læsbar. Det $sitea variabel forbliver knyttet til webstedet, indtil du enten ændrede indholdet manuelt, eller Bash-sessionen sluttede. Og du kan selvfølgelig lave flere variabler, som f.eks siteb, sitec, og sited.
Når du opsætter nye variabler, kan du bruge de navne, du ønsker, og gemme alle alfanumeriske strenge i dem. Husk dog, at der som standard skelnes mellem store og små bogstaver. Dermed, $sitea ville ikke være det samme som $SiteA. Bemærk også, at du skal bruge anførselstegn, når du gemmer strenge med specialtegn indeni (inklusive mellemrum).
Variabler i scripts
Variabler i Bash er mere nyttige, når du skriver scripts, da de giver dig mulighed for at skrive et enkelt script, som derefter kan iterere gennem forskellige strenge eller handle på tilpassede stykker data. Lad os sige, at du skriver et script, som alle kan bruge på deres computer, men hver gang vil vise en personlig hilsen. Uden variabler ville du skulle skrive en anden version af scriptet for hver bruger. Med variabler beholder du scriptet det samme og ændrer kun brugerens navn.
Sådan et script ville se nogenlunde i stil med følgende:
#!/bin/bash username=Odysseas echo $username

Ovenstående eksempel kan virke overflødigt; men efterhånden som kodens kompleksitet øges, bliver variabler uundværlige. Et script kan være hundreder eller tusindvis af linjer langt og indeholde brugerens navn på forskellige steder. For bedre at forstå det, overvej følgende noget anderledes script:
#!/bin/bash username=Linus echo Hello $username. This is a simple script I wrote that will repeat your name - that is, $username - often as an actual example of how to use Bash variables. I hope it will make it easier to understand how to use variables to improve your Bash workflow, $username. In this case, the variable username is mapped to your name. Whenever Bash runs into it, it replaces it with $username.

Ovenstående script vil bruge navnet defineret som username variabel for at fuldende teksten. Hvis du bruger det faktiske brugernavn, skal du skrive det fire gange. Gør derefter det samme for den næste bruger og yderligere fire gange for den næste. Igen og igen. Ved at tildele den til en variabel, skal du kun ændre den én gang for hver bruger, og hver omtale af brugerens navn i teksten vil blive opdateret.
Permanente Bash-variabler og aliaser
Vi så, hvordan du midlertidigt kan indstille variabler, og hvordan du for noget mere permanent kan inkludere dem i dine egne scripts. Er det dog ikke muligt permanent at indstille variabler i Bash? Svaret er et stort “yup!” og du behøver kun at redigere en enkelt fil: “~/.bashrc”.
Åbn filen “~/.bashrc” i din foretrukne teksteditor. Da jeg foretrækker nano, gjorde jeg det med:
nano ~/.bashrc

Vi foreslår, at du begynder med en testkørsel, hvor du kun tilføjer en enkelt variabel, så du ved, hvor du skal lede, hvis processen ikke fungerer. Flyt til slutningen af filen, og tilføj din variabel på en ny linje. For eksempel indstiller jeg en variabel for mit navn som:
myname="Odysseas Kourafalos"

Gem din fil og afslut editoren. Justeringerne vil ikke blive anvendt med det samme. Indtast følgende i din terminal for at det træder i kraft:
source ~/.bashrc
Nu kan du gøre brug af den nyligt indstillede variabel i din Bash-session:
echo $myname
Du kan konfigurere så mange variabler, som du vil, og i høj grad forenkle dine daglige eventyr i Bash.
For et ekstra løft i produktiviteten er det også værd at opsætte en anden type variabel: aliaser. I modsætning til typiske variabler, som er knyttet til data, du kan bruge i kommandoer, bruges aliaser i stedet for faktiske kommandoer.
Ligesom du kan bruge en variabel, der er nem at huske, til at holde lange tekststrenge, kan du bruge aliaser som nemme alternativer til komplekse kommandoer. Du kan finde mere om dem her, hvor vi forvandler en hel 7zip-kompressionskommando til et to-tegns alias.
Som en sidste bemærkning, selvom du permanent har indstillet en variabel i .bashrc, kan du midlertidigt gentildele en anden værdi til den, som vi så før. Variablen vil præsentere det nye indhold, indtil den aktuelle Bash-session slutter (efter at du er logget ud eller genstartet), eller du ressourcer til .bashrc-filen.
Støt vores arbejde ❤️
Hvis du kunne lide denne artikel, kan du overveje at give drikkepenge for at hjælpe os med fortsat at udgive kvalitetsindhold.




















