logo

Uderz jeśli

W tym temacie zrozumiemy, jak używać jeśli oświadczenia w skryptach Bash, aby zakończyć nasze zautomatyzowane zadania.

Bash, jeśli instrukcje są korzystne. Służą do wykonywania zadań warunkowych w sekwencyjnym przebiegu wykonywania instrukcji. Instrukcje if zwykle pozwalają nam podejmować decyzje w naszych skryptach Bash. Pomagają nam podjąć decyzję, czy uruchomić fragment kodu, w oparciu o warunek, który możemy ustawić.

Podstawowe instrukcje if

Podstawowa instrukcja if nakazuje wykonanie tylko określonego zestawu akcji, jeśli określony warunek jest prawdziwy. Jeśli to nieprawda, nie wykonuj tych działań. Jeżeli zestawienie opiera się na formacie:

Składnia

 if [ expression ]; then statements fi 

Oświadczenie pomiędzy Następnie I Być (Jeśli od tyłu) zostanie wykonane tylko wtedy, gdy wyrażenie (w nawiasach kwadratowych) jest prawdziwe.

metody łańcuchowe w Javie

Notatka:Zwróć uwagę na spacje użyte w pierwszym wierszu i średnik na końcu pierwszego wiersza; oba są obowiązkowe do użycia.Jeśli instrukcja warunkowakończy sięByć.

  • Aby użyć wielu warunków z operatorem AND:
 if [ expression_1 ] && [ expression_2 ]; then statements fi 
  • Aby użyć wielu warunków z operatorem OR:
 if [ expression_1 ] || [ expression_2 ]; then statements fi 
  • W przypadku wyrażeń złożonych z operatorami AND i OR możemy zastosować następującą składnię:
 if [ expression_1 && expression_2 || expression_3 ]; then statements fi 

Poniżej znajduje się kilka przykładów demonstrujących użycie instrukcji if:

Przykład 1

W tym przykładzie wprowadź dowolną liczbę przez użytkownika i sprawdź, czy wartość jest większa niż 125.

 #!/bin/bash read -p ' Enter number : ' number if [ $number -gt 125 ] then echo 'Value is greater than 125' fi 

Wyjście

Jeśli wprowadzimy liczbę 159, wynik będzie wyglądał następująco:

pawandeep rajan
Instrukcja Bash If

Przykład 2

W tym przykładzie demonstrujemy użycie jeśli stwierdzenie z prostym scenariuszem porównywania dwóch ciągów znaków:

 #!/bin/bash # if condition is true if [ 'myfile' == 'myfile' ]; then echo 'true condition' fi # if condition is false if [ 'myfile' == 'yourfile' ]; then echo 'false condition' fi 

Wyjście

Instrukcja Bash If

Przykład 3

W tym przykładzie pokazujemy, jak porównywać liczby za pomocą instrukcji if:

 #!/bin/bash #if condition (greater than) is true if [ 10 -gt 3 ]; then echo '10 is greater than 3.' fi #if condition (greater than) is false if [ 3 -gt 10 ]; then echo '3 is not greater than 10.' fi #if condition (lesser than) is true if [ 3 -lt 10 ]; then echo '3 is less than 10.' fi #if condition (lesser than) is false if [ 10 -lt 3 ]; then echo '10 is not less than 3.' fi #if condition (equal to) is true if [ 10 -eq 10 ]; then echo '10 is equal to 10.' fi #if condition (equal to) is false if [ 10 -eq 9 ]; then echo '10 is not equal to 9' fi 

Wyjście

Instrukcja Bash If

Przykład 4

W tym przykładzie zdefiniujemy, jak używać operatora AND, aby uwzględnić wiele warunków w wyrażeniu if:

 #!/bin/bash # TRUE && TRUE if [ 8 -gt 6 ] && [ 10 -eq 10 ]; then echo 'Conditions are true' fi # TRUE && FALSE if [ 'mylife' == 'mylife' ] && [ 3 -gt 10 ]; then echo 'Conditions are false' fi 

Wyjście

Instrukcja Bash If

Przykład 5

W tym przykładzie zdefiniujemy, jak używać operatora OR do uwzględnienia wielu warunków w wyrażeniu if:

 #!/bin/bash # TRUE || FALSE if [ 8 -gt 7 ] || [ 10 -eq 3 ]; then echo ' Condition is true. ' fi # FALSE || FALSE if [ 'mylife' == 'yourlife' ] || [ 3 -gt 10 ]; then echo ' Condition is false. ' fi 

Wyjście

Instrukcja Bash If

Przykład 6

W tym przykładzie zdefiniujemy, jak używać AND i OR, aby uwzględnić wiele warunków w wyrażeniu if:

 #!/bin/bash # TRUE && FALSE || FALSE || TRUE if [[ 10 -eq 10 && 5 -gt 4 || 3 -eq 4 || 3 -lt 6 ]]; then echo 'Condition is true.' fi # TRUE && FALSE || FALSE if [[ 8 -eq 8 && 8 -gt 10 || 9 -lt 5 ]]; then echo 'Condition is false' fi 

Wyjście

nie jest równy mysql
Instrukcja Bash If

Opcje instrukcji If w skryptach Bash

Instrukcja if zawiera wiele opcji wykonania określonego zadania. Opcji tych można używać do operacji na plikach, operacji na ciągach znaków itp. Poniżej przedstawiono niektóre najczęściej używane opcje:

-
Opcje (operatorzy) Opis
! WYRAŻENIE Aby sprawdzić, czy WYRAŻENIE jest fałszywe.
-n ŁAŃCUCH Aby sprawdzić, czy długość STRING jest większa od zera.
-z ŁAŃCUCH Aby sprawdzić, czy długość STRING wynosi zero (tj. jest pusta)
ŁAŃCUCH1 == ŁAŃCUCH2 Aby sprawdzić, czy STRING1 jest równy STRING2.
ŁAŃCUCH1!= ŁAŃCUCH2 Aby sprawdzić, czy STRING1 nie jest równy STRING2.
INTEGER1 -eq INTEGER2 Aby sprawdzić, czy INTEGER1 jest liczbowo równa INTEGER2.
INTEGER1 -gt INTEGER2 Aby sprawdzić, czy INTEGER1 jest liczbowo większa niż INTEGER2.
INTEGER1 -lt INTEGER2 Aby sprawdzić, czy INTEGER1 jest liczbowo mniejsza niż INTEGER2.
-d PLIK Aby sprawdzić, czy PLIK istnieje i jest to katalog.
-e PLIK Aby sprawdzić, czy PLIK istnieje.
-r PLIK Aby sprawdzić, czy PLIK istnieje i czy przyznano uprawnienia do odczytu.
-s PLIK Aby sprawdzić, czy PLIK istnieje i jego rozmiar jest większy od zera (co oznacza, że ​​nie jest pusty).
-w PLIK Aby sprawdzić, czy PLIK istnieje i przyznano uprawnienia do zapisu.
x PLIK Aby sprawdzić, czy PLIK istnieje i udzielono pozwolenia na wykonanie.

Zagnieżdżone Jeśli

Możesz zastosować dowolną liczbę instrukcji if w skrypcie bash. Możliwe jest również użycie instrukcji if wewnątrz innej instrukcji if. Nazywa się to zagnieżdżoną instrukcją if.

Przykład

W tym przykładzie sprawdzimy, czy dana liczba jest większa niż 50 i czy jest to liczba parzysta, używając zagnieżdżonego wyrażenia if.

struktura danych
 #!/bin/bash #Nested if statement if [  -gt 50 ] then echo 'Number is greater than 50.' if ((  % 2 == 0 )) then echo 'and it is an even number.' fi fi 

Wyjście

Jeśli wprowadzimy wartość argumentu jako 100, wynik będzie wyglądał następująco:

Instrukcja Bash If

Wniosek

W tym temacie omówiliśmy, w jaki sposób możemy wykorzystać rozgałęzienia warunkowe w sekwencyjnym przebiegu wykonywania instrukcji za pomocą instrukcji bash if.