В Bash има различни видове условни изявления:
- ако изявление
- изявление if-else
- if..elif..else изявление
- Вложен
В тази статия ще научим едно от условните изявления, което е if, elseif, else заедно с няколко примера. На няколко други езика elif се пише като elseif или иначе if. Изявлението на elif ни помага да вземаме решения между различни избори.
Синтаксисът на if, elseif, else е:
ако <test_expression>;тогава
<команда за изпълнение>
elif <test_expression>;тогава
<команда за изпълнение>
иначе
<команда за изпълнение>
бъда
Ключовата дума if 'е последвана от условието, което искате да проверите. В този условен израз if-else-if изразите се оценяват отгоре надолу.
- Това е последвано от тогава ключова дума.
- След това, ако изразът е оценен на true, се изпълняват съответните изявления. Ако изразите се оценят на false, съответното изявление вътре в elif ще бъде изпълнено.
- Ако нито едно от условията не е вярно, се изпълнява изявлението вътре в останалото блокирано.
Пример 1
Elif (иначе ако) се използва за множество условия if. В случай, че първото условие стане невярно, проверете друго, ако условията. В следния пример ние приемаме данни от потребителя и показваме съответните изявления.
- Използвайте условие if, за да проверите дали маркировките са по -големи или равни на 80. Ако условието се изчисли като вярно, то ще отпечата отлично с помощта на командата echo под блока then.
- Ако първото условие се изчисли на false, то след това ще използва условието elif, за да провери дали маркировките са по -големи или равни на 70, ако това е вярно, ще отпечата добре.
- Ако нито едно от горните условия не е вярно, то ще премине към условието else и ще отпечата задоволително.
ако [ $ марки -прости 80 ]
тогава
изхвърлен 'Отлично'
elif [ $ марки -прости 60 ]
тогава
изхвърлен 'Добре'
иначе
изхвърлен „Задоволително“
бъда
Пример 2:
Например, искаме да документираме оценките за определен курс. Общите оценки са 200 със 100 точки за тестове и 100 за задачи. Искаме да покажем сумата от задания и тестове, като същевременно се уверим, че общият брой не надвишава 200.
- Вземете въведените данни: quiz_marks и assignments_marks
- Уверете се, че нито един от двата входа не надвишава максимално възможните оценки за всеки от тях, т.е. 100, като използвате условията if и elif.
- Ако някой от въведените quiz_marks или assignments_marks надвишава 100, покажете предупредително съобщение, като използвате командата echo.
- Моля, проверете знаците за въвеждане за тест
- Моля, проверете входните знаци за задания
- Ако нито едно от горните условия не съвпада, т.е. нито една от маркировките не надвишава 100, преминете към условието else и покажете сумата от марки с помощта на командата echo.
Прочети -стр „Въведете теоретични знаци:“quiz_marks
Прочети -стр „Въведете практически марки:“assignments_marks
ако (($ quiz_marks > петдесет));
тогава
изхвърлен 'Моля, проверете знаците за въвеждане за тест.'
elif (($ assignments_marks > петдесет));
тогава
изхвърлен „Моля, проверете въведените знаци за задания.“
иначе
изхвърлен „Вашите общи оценки: сума =$ ((quiz_marks + assignments_marks)) '
бъда
Пример 3:
Нека вземем друг пример за програма за банкова сметка, в която искаме да имаме три отделни изхода за 3 различни ситуации:
- Балансът е по -малък от нула
- Балансът е нулев
- Балансът е над нулата
Например, в следната програма използвайте инструкциите if, elif, else за показване на различни изходи в различни сценарии:
- Използвайте условие if, за да проверите дали балансът е по -малък от нула. Ако това условие се изчисли като вярно, покажете съобщението с помощта на командата echo: Балансът е по -малък от нула. Моля, добавете още средства, в противен случай ще бъдете таксувани.
- Ако горното условие не съвпада, използвайте условието elif, за да проверите дали балансът е равен на нула. Ако е вярно, покажете съобщението: Балансът е нула, моля добавете средства
- Ако нито едно от горните условия не съвпада, използвайте условието else, за да покажете: Вашият баланс е над нулата.
Баланс=900
ако ((Баланс< 0));тогава
изхвърлен „Балансът е по -малък от нула. Моля, добавете още средства, в противен случай ще бъдете начислени неустойка“
elif ((Баланс ==0));тогава
изхвърлен „Балансът е нулев, моля добавете средства“
иначе
изхвърлен 'Балансът ви е над нулата.'
бъда
От горните примери за условен израз, ако, elif, иначе, сега трябва да можете да разберете как работи този условен израз и къде може да се използва в различни сценарии. Надявам се статията да ви е харесала.