Selvom det kan virke som om, at ${variable}
og $variable
er det samme, er der nogle vigtige forskelle og fordele ved at bruge ${variable}
. Her er nogle grunde til at vælge ${variable}
:
${variable}
bliver det tydeligere, hvor variablen starter og slutter, især når den er omgivet af andre tegn.
echo "Value is $variabletext"
Her vil shellen forsøge at finde en variabel ved navn variabletext
. Ved at bruge ${variable}
undgår man denne konflikt:
echo "Value is ${variable}text"
${}
syntaksen tillader mere komplekse operationer som substring, længde og standardværdier:
${variable:0:5}
- Henter de første 5 tegn af variablen.${#variable}
- Returnerer længden af variablen.${variable:-default}
- Bruger en standardværdi, hvis variablen er tom.$()
bruges til at udføre en kommando og indsætte dens output i stedet for kommandoen. Dette er nyttigt i mange situationer:
current_date=$(date)
$()
er ofte mere læsbart end den ældre backtick-syntaks `command`
:
files=$(ls -1)
$()
tillader nem indlejring af kommandoer:
result=$(command1 $(command2))
Ved at forstå forskellene og anvendelserne af ${variable}
og $()
kan du skrive mere robust og læsbart kode.
Spar dig selv for besvær og kom igennem din to-do liste i dag
1
Beskriv din opgave
2
Modtag bud
3
Få løst din opgave
Møbelsamling
Hjælp med at samle Ikea klædeskab
Maler
Klargøring af lejlighed til flyttesyn
Flyttehjælp
Flytning af 150 kvm hus til Roskilde fra København
Havearbejde
Beskæring af 4 større træer
IT support
Geninstallering af windows + programmer
Elektriker
Installation af Sonos musikanlæg i hus
Rengøring
Ugentlig rengøring af lejlighed (114kvm)
Flyttehjælp
Flytning af 150 kvm hus til Roskilde fra København
Elektriker
Opsætning af lamper i stue og soveværelse
Catering
3-retters menu til 14 mennesker