Баш-изјава со други примери

Ако-друго изјавите во баш-скриптите се слични на сите други програмски јазици; тоа е метод за програма за донесување одлуки.

Во if-else изјави, за извршувањето на блок од изјавата се одлучува врз основа на резултатот од if состојба



Синтакса на изјавата за баш-друго

Синтаксата на if-else изјава во баш е:


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

Ако состојбата се процени на true, тогаш if блок-кодот е извршен, и ако состојбата процени на false тогаш 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 изјавата е само едноставна условна изјава. Ако состојбата во рамките на 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, тогаш ништо не се печати.

Баш ако-друго Пример

Кога резултатот од 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


Баш ако-елиф-друго Пример

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