Bash If-Else изявление с примери

Операторите if-else при скриптове на bash са подобни на други езици за програмиране; това е метод за програмата да взема решения.

В if-else изявления, изпълнението на блок от изявления се решава въз основа на резултата от if състояние.



Синтаксис на Bash If-Else Statement

Синтаксисът на if-else изявление в bash е:


if [condition] then
//if block code else // else block code fi

Ако състоянието се изчислява на true, if блок код се изпълнява и ако условието се изчислява на false тогава else блок код се изпълнява.

Забележка:Блокът if само се изпълнява, ако условието оценява на вярно .
Операторът else и кодът else са по избор.

Трябва да завършим if изявление с fi ключова дума.




Условни сравнения

Изразът, използван от условната конструкция, трябва да се изчисли или на true или false. Изразът може да бъде единичен низ или променлива.

  • по-малко от - обозначава се с: $a -lt $b или $a < $b
  • по-велик от - обозначава се с: $a -gt $b или $a > $b
  • по-малко или равно на - обозначава се с: $a -le $b или $a <= $b
  • по-голямо или равно на - обозначава се с: $a -ge $b или $a >= $b
  • равна на - обозначава се с: $a -eq $b или $a == $b
  • не е равно на - обозначава се с: $a -ne $b или $a != $b

Логически оператори

Изразът в if израз може да бъде и логическа комбинация от множество сравнения.

Логическите оператори са:

  • логично и - обозначава се с $a AND $b или $a && $b оценява на true когато и двете променливи или твърдения са верни.
  • логично или - обозначава се с $a OR $b или $a || $b оценява на true когато една от променливите или твърдения са верни.
Забележка:Когато се използват логически оператори, условните изрази трябва да бъдат заобиколени от двойни скоби [[]].

Например:


#!/bin/bash first_name='John' last_name='Doe' if [[ $first_name = 'John' && $last_name = 'Doe' ]] then echo 'hello John Doe' fi

Баш, ако пример

if statement е просто обикновено условно изявление. Ако състоянието в рамките на if[] оценява на true тогава if кодовия блок се изпълнява.

Пример:

#!/bin/bash read -p 'Enter a number: ' mynumber if [ $mynumber -gt 10 ] then
echo 'The number you entered is greater than 10' fi
Забележка:В горния пример, ако въведем число, което е по-малко от 10, тогава нищо не се отпечатва.

Пример за Bash, ако не

Когато резултатът от if условието е false след това кодът в else блок се изпълнява, при условие че има такъв.

Например:


#!/bin/bash read -p 'Enter a number: ' mynumber if [ $mynumber -gt 10 ] then
echo 'The number you entered is greater than 10' else
echo 'The number you entered is less than 10' fi


Пример за Bash if-elif-else

elif (иначе ако) се използва, когато има множество if условия.

Например:

#!/bin/bash read -p 'Enter your exam grade: ' grade if [ $grade -ge 80 ] then
echo 'You got A' elif [ $grade -ge 70 ] then
echo 'You got B' elif [ $grade -ge 60 ] then
echo 'You got C' else
echo 'Fail' fi


Баш, вложен ако пример

Може също да имаме вложени if изявления.

Например:


#!/bin/bash read -p 'Enter value of a :' a read -p 'Enter value of b :' b read -p 'Enter value of c :' c if [ $a -gt $b ] then
if [ $a -gt $c ]
then
echo 'a is greatest'
else
echo 'c is greatest'
fi else
if [ $b -gt $c ]
then
echo 'b is greatest'
else echo 'c is greatest'
fi fi