U ovoj ćemo temi razumjeti kako koristiti if-else izjave u Bash skriptama za dovršavanje naših automatiziranih zadataka.
Bash if-else naredbe koriste se za izvođenje uvjetnih zadataka u sekvencijalnom tijeku izvođenja naredbi. Ponekad želimo obraditi određeni skup izjava ako je uvjet istinit, i drugi skup izjava ako je netočan. Za izvođenje takve vrste akcija možemo primijeniti mehanizam if-else. Uvjet možemo primijeniti s 'if naredbom'.
Sintaksa Bash If Else
Sintaksa if-else naredbe u Bash Shell skriptiranju može se definirati na sljedeći način:
if [ condition ]; then else fi
Važne točke koje treba zapamtiti
- Možemo koristiti skup jednog ili više uvjeta spojenih pomoću uvjetnih operatora.
- Else block naredbe uključuju skup radnji koje treba izvršiti kada je uvjet lažan.
- Točka-zarez (;) nakon uvjetnog izraza je obavezan.
Pogledajte sljedeće primjere koji pokazuju upotrebu naredbe if-else u Bash skripti:
Primjer 1
Sljedeći primjer sastoji se od dva različita scenarija gdje je u prvom if-else iskazu uvjet istinit, a u drugom if-else iskazu uvjet je lažan.
#!/bin/bash #when the condition is true if [ 10 -gt 3 ]; then echo '10 is greater than 3.' else echo '10 is not greater than 3.' fi #when the condition is false if [ 3 -gt 10 ]; then echo '3 is greater than 10.' else echo '3 is not greater than 10.' fi
Izlaz
U prvom if-else izrazu, uvjet ( 10 -gt 3 ) je istinit i stoga se naredba u if bloku izvršava. Dok je u drugom if-else izrazu uvjet ( 3 -gt 10 ) netočan i stoga se izjava u else bloku izvršava.
Primjer 2
U ovom smo primjeru objasnili kako koristiti više uvjeta s if-else naredbom u Bashu. Koristimo bash logičke operatore za spajanje više uvjeta.
#!/bin/bash # When condition is true # TRUE && FALSE || FALSE || TRUE if [[ 10 -gt 9 && 10 == 9 || 2 -lt 1 || 25 -gt 20 ]]; then echo 'Given condition is true.' else echo 'Given condition is false.' fi # When condition is false #TRUE && FALSE || FALSE || TRUE if [[ 10 -gt 9 && 10 == 8 || 3 -gt 4 || 8 -gt 8 ]]; then echo 'Given condition is true.' else echo 'Given condition is not true.' fi
Izlaz
Bash If Else naredba u jednom retku
Možemo napisati potpunu 'if-else izjavu' zajedno s naredbama u jednom retku. Morate slijediti navedena pravila da biste koristili if-else naredbu u jednom retku:
- Koristite točku-zarez (;) na kraju naredbi u if i else blokovima.
- Koristite razmake kao razdjelnike za dodavanje svih izjava.
Dolje je dan primjer koji pokazuje kako koristiti if-else naredbu u jednom retku:
Primjer
#!/bin/bash read -p 'Enter a value:' value if [ $value -gt 9 ]; then echo 'The value you typed is greater than 9.'; else echo 'The value you typed is not greater than 9.'; fi
Izlaz
Kada unesemo vrijednost kao 25, tada će izlaz izgledati ovako:
Bash Nested If Else
Baš kao i ugniježđena naredba if, naredba if-else također se može koristiti unutar druge naredbe if-else. Zove se ugniježđeni if-else u Bash skriptiranju.
Slijedi primjer koji objašnjava kako koristiti ugniježđenu if-else naredbu u Bashu:
Primjer
#!/bin/bash read -p 'Enter a value:' value if [ $value -gt 9 ]; then if [ $value -lt 11 ]; then echo '$value>9, $value<11' else echo 'the value you typed is greater than 9.' fi not < pre> <p> <strong>Output</strong> </p> <p>If we enter 10 as value, then the output will look like this:</p> <img src="//techcodeview.com/img/bash-tutorial/63/bash-if-else-4.webp" alt="Bash If Else Statement"> <h2>Conclusion <p>In this topic, we have learned about the syntax and usage of <strong>Bash if-else</strong> statement with the examples.</p> <hr></h2></11'>