Voorwaardelijke opdrachten laten je een beslissing nemen of een actie wel of niet zal worden uitgevoerd, de beslissing wordt genomen door de waarde te bepalen van een expressie.
Voorwaardelijke opdrachten bestaan er in veel vormen. De basisvorm is: if expressie then statement hierbij wordt 'statement' alleen uitgevoerd wanneer de 'expressie' de waarde true oplevert.
`2<1' is een expressie die de waarde false oplevert, terwijl `2>1' de waarde true oplevert.
Er zijn nog andere vormen voorwaardelijke opdrachten, zoals: if expressie then statement1 else statement2. Hier wordt 'statement1' uitgevoerd als de 'expressie' true oplevert, anders wordt 'statement2' uitgevoerd.
Nog een andere vorm van een voorwaardelijke opdracht is: if expressie1 then statement1 else if expressie2 then statement2 else statement3 In deze vorm is slechts de "ELSE IF 'expressie2' THEN 'statement2'" toegevoegd wat maakt dat statement2 wordt uitgevoerd als expressie2 de waarde true oplevert. De rest is wat je er zelf van maakt. (zie vorige vormen).
Iets over syntax:
De basis van een 'if' constructie onder bash is:
if [expressie];
then
code als 'expressie' is true.
fi
#!/bin/bash
if [ "foo" = "foo" ]; then
echo waarde van expressie leverde true op
fi
De code die zal worden uitgevoerd als de expressie tussen de blokhaken true oplevert, is te vinden achter het 'then' woord en voor het 'fi' woord waarmee het einde van de voorwaardelijk uit te voeren code wordt aangegeven.
#!/bin/bash
if [ "foo" = "foo" ]; then
echo expressie levert de waarde true op
else
echo expressie levert de waarde false op
fi
#!/bin/bash
T1="foo"
T2="bar"
if [ "$T1" = "$T2" ]; then
echo expressie levert de waarde true op
else
echo expressie levert de waarde false op
fi