Šajā tēmā mēs sapratīsim, kā Bash skriptos izmantot if-else paziņojumus, lai pabeigtu mūsu automatizētos uzdevumus.
Bash if-else priekšraksti tiek izmantoti, lai izpildītu nosacījumus uzdevumus secīgā paziņojumu izpildes plūsmā. Dažreiz mēs vēlamies apstrādāt noteiktu paziņojumu kopu, ja nosacījums ir patiess, un citu paziņojumu kopu, ja tas ir nepatiess. Lai veiktu šāda veida darbības, mēs varam izmantot if-else mehānismu. Mēs varam piemērot nosacījumu ar “if” paziņojumu.
Bash If Else sintakse
If-else priekšraksta sintaksi programmā Bash Shell Scripting var definēt šādi:
if [ condition ]; then else fi
Svarīgi punkti, kas jāatceras
- Mēs varam izmantot viena vai vairāku nosacījumu kopu, kas savienotas, izmantojot nosacījumu operatorus.
- Citu bloku komandas ietver darbību kopu, kas jāveic, ja nosacījums ir nepatiess.
- Semikols (;) pēc nosacītās izteiksmes ir obligāts.
Apskatiet šādus piemērus, kas parāda if-else priekšraksta izmantošanu Bash Script:
1. piemērs
Šis piemērs sastāv no diviem dažādiem scenārijiem, kur pirmajā if-else priekšrakstā nosacījums ir patiess, bet otrajā if-else priekšrakstā nosacījums ir nepatiess.
#!/bin/bash #when the condition is true if [ 10 -gt 3 ]; then echo '10 is greater than 3.' else echo '10 is not greater than 3.' fi #when the condition is false if [ 3 -gt 10 ]; then echo '3 is greater than 10.' else echo '3 is not greater than 10.' fi
Izvade
Pirmajā if-else izteiksmē nosacījums ( 10 -gt 3 ) ir patiess, un tādējādi tiek izpildīts paziņojums if blokā. Savukārt citā if-else izteiksmē nosacījums ( 3 -gt 10 ) ir nepatiess, tāpēc tiek izpildīts priekšraksts else blokā.
2. piemērs
Šajā piemērā mēs paskaidrojām, kā lietot vairākus nosacījumus ar if-else priekšrakstu programmā Bash. Mēs izmantojam bash loģiskos operatorus, lai pievienotu vairākus nosacījumus.
#!/bin/bash # When condition is true # TRUE && FALSE || FALSE || TRUE if [[ 10 -gt 9 && 10 == 9 || 2 -lt 1 || 25 -gt 20 ]]; then echo 'Given condition is true.' else echo 'Given condition is false.' fi # When condition is false #TRUE && FALSE || FALSE || TRUE if [[ 10 -gt 9 && 10 == 8 || 3 -gt 4 || 8 -gt 8 ]]; then echo 'Given condition is true.' else echo 'Given condition is not true.' fi
Izvade
Bash If Else paziņojums vienā rindā
Mēs varam ierakstīt pilnu 'if-else paziņojumu' kopā ar komandām vienā rindā. Lai vienā rindā izmantotu priekšrakstu if-else, jāievēro norādītie noteikumi:
- Izmantojiet semikolu (;) paziņojumu beigās if un else blokos.
- Izmantojiet atstarpes kā norobežotāju, lai pievienotu visus paziņojumus.
Tālāk ir sniegts piemērs, kas parāda, kā vienā rindā izmantot priekšrakstu if-else:
Piemērs
#!/bin/bash read -p 'Enter a value:' value if [ $value -gt 9 ]; then echo 'The value you typed is greater than 9.'; else echo 'The value you typed is not greater than 9.'; fi
Izvade
Ievadot vērtību kā 25, izvade izskatīsies šādi:
Bash Nested If Else
Tāpat kā ligzdoto if priekšraksts, arī if-else priekšraksts var tikt izmantots citā if-else priekšrakstā. Bash skriptēšanā to sauc par ligzdotu if-else.
Tālāk ir sniegts piemērs, kas izskaidro, kā izmantot ligzdoto if-else priekšrakstu programmā Bash:
Piemērs
#!/bin/bash read -p 'Enter a value:' value if [ $value -gt 9 ]; then if [ $value -lt 11 ]; then echo '$value>9, $value<11' else echo 'the value you typed is greater than 9.' fi not < pre> <p> <strong>Output</strong> </p> <p>If we enter 10 as value, then the output will look like this:</p> <img src="//techcodeview.com/img/bash-tutorial/63/bash-if-else-4.webp" alt="Bash If Else Statement"> <h2>Conclusion <p>In this topic, we have learned about the syntax and usage of <strong>Bash if-else</strong> statement with the examples.</p> <hr></h2></11'>