У овој теми ћемо разумети како да користимо иф-елсе изјаве у Басх скриптама да бисмо завршили наше аутоматизоване задатке.
Басх иф-елсе наредбе се користе за обављање условних задатака у секвенцијалном току извршавања наредби. Понекад желимо да обрадимо одређени скуп исказа ако је услов тачан, а други скуп исказа ако је нетачан. Да бисмо извршили такву врсту радњи, можемо применити механизам иф-елсе. Услов можемо применити са 'иф наредбом'.
Синтакса Басх Иф Елсе
Синтакса иф-елсе исказа у Басх Схелл скриптовима може се дефинисати на следећи начин:
if [ condition ]; then else fi
Важне тачке које треба запамтити
- Можемо користити скуп од једног или више услова спојених помоћу условних оператора.
- Блок команде Елсе укључује скуп радњи које треба извршити када је услов нетачан.
- Тачка и зарез (;) после условног израза је обавезна.
Погледајте следеће примере који демонстрирају употребу иф-елсе наредбе у Басх скрипти:
Пример 1
Следећи пример се састоји од два различита сценарија где је у првом иф-елсе наредби услов тачан, ау другом иф-елсе наредби услов је нетачан.
#!/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
Излаз
У првом иф-елсе изразу, услов ( 10 -гт 3 ) је тачан и тако се извршава наредба у блоку иф. Док је у другом иф-елсе изразу услов (3 -гт 10) нетачан и тако се извршава наредба у блоку елсе.
Пример 2
У овом примеру смо објаснили како да користите више услова са иф-елсе наредбом у Басху. Користимо басх логичке операторе за спајање више услова.
#!/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
Излаз
Наредба Басх Иф Елсе у једном реду
Можемо написати комплетну 'иф-елсе изјаву' заједно са командама у једном реду. Морате да пратите дата правила да бисте користили иф-елсе наредбу у једном реду:
- Користите тачку и зарез (;) на крају наредби у блоковима иф и елсе.
- Користите размаке као граничник да бисте додали све изјаве.
У наставку је дат пример који показује како да користите иф-елсе наредбу у једном реду:
Пример
#!/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
Излаз
Када унесемо вредност као 25, онда ће излаз изгледати овако:
Басх Нестед Иф Елсе
Баш као угнежђени иф наредба, иф-елсе изјава се такође може користити унутар друге иф-елсе наредбе. Зове се угнежђени иф-елсе у Басх скриптама.
Следи пример који објашњава како да користите угнежђени иф-елсе наредбу у Басху:
Пример
#!/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'>