Bash:
Interpolera en sträng
How to: (Så här gör du:)
name="Världen"
greeting="Hej, $name!"
echo $greeting # Skriver ut: Hej, Världen!
# Med kommandoutbyte:
user_count=$(who | wc -l)
echo "Det är $user_count användare inloggade på systemet."
# Med aritmetik:
a=5
b=7
echo "$(( a + b )) är summan av 5 och 7." # Skriver ut: 12 är summan av 5 och 7.
Deep Dive (Djupdykning)
Stränginterpolering är ingen nyhet i programmering. Det har använts i olika språk, som Perl och PHP, långt innan Bash introducerade det. I Bash ersätter $variabelnamn
eller ${variabelnamn}
med värdet av variabeln, och $(kommando)
tar utdatan från ett kommando. Alternativ som 'single quotes'
förhindrar interpolering, bra när exakta värden behövs. I komplicerade skript, använd dubbla citattecken för att undvika oönskad ordexpansion. Kom ihåg, allt i Bash er processas sekventiellt, så interpolering sker vid exekveringstid.