Parameter Substitution (Bash)
Versie door Jeroen Strompf (overleg | bijdragen) op 1 aug 2021 om 18:57
Parameter substitution, parameter expansion of shell parameter expansion betekent dat in een Bash-expressie een parameter of variabele wordt vervangen door de inhoud van die variabele. Parameter expansion wordt aangegeven met $
, vaak in combinatie met accolades: ${}
, of nog completer: ${parameter}
.
Zoiets simpels als het weergeven van de waarde van een variabele, is al een voorbeeld van parameter substitution:
$ a=12 $ echo $a 12
Afhankelijk van de gebruikte syntaxis, kun je een hoop truken uithalen, waaronder find-&-replace. Dat maakt dit een krachtig stuk gereedschap.
Find-&-replace
Gelijk al een raar voorbeeld: Het eerste argument moet een variabele zijn, maar de tweede en derde zijn literals???
naam="Janneke" echo ${naam/a/A} JAnneke # Dit doet nix, want variable heeft geen waarde: # echo ${Jasper/a/A} # Dit geeft foutmelding - Snap ik niet # echo ${"Jasper"/a/A} echo ${"Jasper"/a/A}: bad substitution