Gli script Bash sono essenziali per facilitare la vita degli amministratori di sistema, degli sviluppatori e degli utenti Linux in generale. E una parte integrante dello scripting bash sono le istruzioni condizionali, cioè le istruzioni if, else if e if else (elif). Queste istruzioni condizionali consentono agli utenti Linux di prendere decisioni in base alle diverse condizioni utilizzate all’interno dello script bash, fornendo così la flessibilità e l’efficienza tanto necessarie. Detto questo, vediamo come utilizzare le istruzioni bash If, Elif e If Else con esempi.
L’istruzione condizionale più comune e fondamentale utilizzata per prendere decisioni nello script bash è l’istruzione “if”. Viene utilizzato principalmente quando è necessario verificare se una determinata condizione è soddisfatta o meno. La sintassi per utilizzare l’istruzione if in bash è:
if (( <condition> ))
then
<statement>
fi
Nella sintassi precedente,
#!/bin/bash
echo -n "Enter a number: "
read num
if (( $num -lt 20 ))
then
echo "The value is less than 20."
fi
Quando viene eseguito lo script precedente, il valore immesso dall’utente viene controllato se è inferiore a 20 o meno. Se è inferiore a 20, allora “Il valore è inferiore a 20”. viene stampato come output.
Quindi con l’istruzione if è possibile eseguire una determinata operazione purché una condizione sia soddisfatta. Ma a volte potrebbe essere necessario eseguire un’operazione se la condizione non è soddisfatta. Per questo, puoi utilizzare un’istruzione condizionale “else” in combinazione con l’istruzione if per aggiungere maggiore flessibilità allo script bash per la tua distribuzione Linux. La sintassi per utilizzare l’istruzione else è:
if (( <conditon> ))
then
<statement_to_execute_if_condition_is_true>
else
<statement_to_execute_if_condition_is_false>
fi
Ad esempio, per verificare se l’utente è idoneo a votare o meno:
#!/bin/bash
echo "Please enter your age:"
read age
if ( "$age" -ge 18 ); then
echo "Congratulations! You are eligible to vote."
else
echo "Sorry, you are not eligible to vote yet."
fi
Sebbene il costrutto condizionale if-else sia utile per verificare una condizione ed eseguire un’attività di conseguenza, cosa succede se è necessario testare più condizioni? Per una situazione del genere, “altrimenti se” o “elif” entra in gioco l’affermazione. Con elif, puoi testare più condizioni e modificare di conseguenza il tuo script bash. La sintassi per utilizzare l’istruzione elif in bash è:
if ( condition_1 )
then
<statements_to_follow_if_condition_1_is_true>
elif ( condition_2 )
then
<statements_to_follow_if_condition_2_is_true>
else
<statements_to_follow_if_all_conditions_are_false>
fi
Per esempio:
#!/bin/bash
echo -n "Enter a fruit name: "
read fruit
if ( "$fruit" = "apple" )
then
echo "It's an apple."
elif ( "$fruit" = "banana" )
then
echo "It's a banana."
else
echo "It's neither an apple nor a banana."
fi