В тази тема ще разберем как да използваме оператори else-if (elif) в Bash скриптове, за да изпълним нашите автоматизирани задачи.
Операторът на bash else-if се използва за множество условия. Това е точно като допълнение към израза if-else на Bash. В Bash elif може да има няколко elif блока с булев израз за всеки един от тях. В случай на първия оператор if, ако дадено условие стане невярно, се проверява второто условие if.
Синтаксис на Bash Else If (elif)
Синтаксисът на оператора else-if в скриптове на Bash shell може да се дефинира като:
многоредов коментар powershell
if [ condition ]; then elif [ condition ]; then else fi
Точно както if-else, можем да използваме набор от едно или повече условия, свързани с помощта на условни оператори. Наборът от команди се изпълнява, когато условието е вярно. Ако няма вярно условие, тогава се изпълнява блокът от команди в оператора else.
Следват някои примери, демонстриращи използването на оператора else-if:
Пример 1
Следващият пример се състои от два различни сценария, при които първият оператор else-if условието е вярно, а във вторият оператор else-if условието е невярно.
прочетете csv файла в java
Bash скрипт
#!/bin/bash read -p 'Enter a number of quantity:' num if [ $num -gt 100 ]; then echo 'Eligible for 10% discount' elif [ $num -lt 100 ]; then echo 'Eligible for 5% discount' else echo 'Lucky Draw Winner' echo 'Eligible to get the item for free' fi
Изход
- Ако въведем числото на количеството като 110, тогава условието на 'if statement' се оценява на true и изходът изглежда така:
- Ако въведем числото на количеството като 90, тогава условието на 'elif statement' се оценява на true и изходът изглежда така:
- Ако въведем числото на количеството като 100, тогава нито едно условие няма да е вярно. В този случай блокът от команди в 'else statement' се изпълнява и изходът изглежда така:
Ето как работи базовият bash else-if.
Пример 2
Този пример демонстрира как да използвате множество условия с оператора else-if в Bash. Използваме логически оператори bash, за да съединим множество условия.
Bash скрипт
#!/bin/bash read -p 'Enter a number of quantity:' num if [ $num -gt 200 ]; then echo 'Eligible for 20% discount' elif [[ $num == 200 || $num == 100 ]]; then echo 'Lucky Draw Winner' echo 'Eligible to get the item for free' elif [[ $num -gt 100 && $num -lt 200 ]]; then echo 'Eligible for 10% discount' elif [ $num -lt 100 ]; then echo 'No discount' fi
Забележка: Трябва да се отбележи, че блокът else не е задължителен.
Изход
Ако въведем числото на количеството като 100, тогава изходът ще изглежда така:
анотации в пролетното зареждане
Опитайте този пример, като поставите различни стойности и вижте резултатите.
Заключение
В тази тема научихме за синтаксиса и използването на оператора на Bash else-if с примерите.