Loopingul este o artă inerentă, care vă poate simplifica munca și vă poate ajuta să automatizați sarcinile repetitive cu relativă ușurință.
Imaginați-vă o situație în care trebuie să actualizați o serie de numere sau text și, în loc să o faceți manual, aveți nevoie ca sistemul să o facă pentru dvs. Aceasta este puterea buclei și beneficiile pe care le aduce la masă pentru tine.
Buclele, ca funcție, sunt disponibile în aproape orice limbaj de programare; Linux’s Bash nu face excepție de la această regulă.
Iată un ghid care explică cum puteți utiliza bucla for într-un script shell.
Structura buclei for
Utilizarea buclei for în scripturile shell este destul de simplă și puteți manipula structura pentru a atinge diferite obiective.
Structura de bază este următoarea:
pentru articol din [LISTĂ]
do
[COMANDE]
Terminat
Cu o buclă, puteți parcurge valorile numerice și de caractere, în funcție de necesitatea orei.
Legate de:Cum se utilizează bucle în JavaScript
Iată structura unei bucle for într-un script shell:
pentru VARIABIL în 1 2 3 4 5.. N
do
comanda1
comanda2
comandaN
Terminat
Puteți defini numărul de iterații în prima linie. În acest fel, veți menționa valoarea de pornire și valoarea finală.
Numărul de iterații este determinat de valorile pe care le specificați, în timp ce codul urmează do instrucțiunea este valoarea buclei rezultată.
Crearea și rularea buclelor for în Linux Bash
Deschideți terminalul Linux pentru a începe să scrieți cod.
Un editor de text este folosit pentru a stoca scriptul shell, care tipărește rezultatele dorite atunci când este executat. În scop ilustrativ, comenzile din acest ghid sunt scrise în Nano editor de text.
Tip nano în linia de comandă a terminalului pentru a deschide editorul de text, urmat de numele scriptului shell.
nano ForLoops.sh
Puteți schimba numele scriptului shell în orice doriți. Extensia este SH, deoarece veți stoca un script shell.
Tipăriți numere întregi folosind bucle for
În această secțiune, următoarele coduri vor demonstra cum puteți imprima valorile întregi în mod diferit. Pentru a utiliza o buclă for într-un script shell pentru a imprima numere întregi, puteți încerca câteva dintre aceste exemple de cod.
1. Cod buclă pentru a imprima un set de numere
Odată ce editorul se deschide, este timpul să scrieți codul.
#!/usr/bin/bash
pentru i în 1 2 3
do
echo „Actualul # $i”
Terminat
Ieșire:
Unde:
- i = numele variabilei pentru a stoca valorile repetate
- 1 2 3 = de câte ori se repetă bucla for din scriptul shell
- do = comandă pentru a efectua un anumit set de acțiuni
- ecou = tipăriți rezultatele definite alături
- Terminat = capătul buclei
Salvați codul în editorul de text apăsând Ctrl + X. Salvați și ieșiți din script.
Legate de: Cum să utilizați buclele For, While și Do While în Java cu exemple
Înainte de a executa codul, trebuie să modificați permisiunile scriptului shell.
introduce chmod +x urmat de numele fișierului script shell:
chmod +x Forloops.sh
Odată ce permisiunile sunt acordate, rulați bucla for din scriptul dvs. shell, tastând următoarele:
./Forloops.sh
Rezultatul se va imprima în fereastra terminalului.
2. Mod alternativ de a imprima un set de numere
Există modalități alternative de a defini o buclă for într-un script shell. De asemenea, puteți specifica valoarea de început și de sfârșit a iterațiilor buclei folosind paranteze.
Iată structura codului:
for i în {1..3} # o buclă for definește o variabilă și câte iterații doriți să faceți printr-o buclă
do
echo „Actualul # $i: Exemplul 2”
Terminat
Bucla va rula de trei ori, iar valorile vor fi tipărite în felul următor:
3. Cod buclă folosind valorile pasului
Puteți defini valorile pasului în bucla dvs. dacă doriți să vă deplasați nesecvențial prin iterații. În funcție de valoarea specificată, ieșirea va avea un decalaj fix.
De exemplu:
pentru i în {1..10..2}
do
echo „Număr = $i”
Terminat
Unde:
- i = variabilă pentru a stoca iterațiile
- 1..10 = numărul de iterații pentru a rula bucla
- 2 = valoarea pasului
- do = comandă pentru a imprima rezultatul
- ecou = comanda print
- Terminat = comandă de ieșire pentru buclă
Ieșire:
Ieșirea are o diferență de doi, care a fost specificată în instrucțiunea pas.
Tipăriți valorile caracterelor folosind buclele for
Buclele For din scriptul shell nu se limitează doar la numere întregi. În Bash, puteți utiliza o buclă for pentru a itera în mod eficient prin caractere și valori de șir.
1. Buclă prin șiruri
Iată un exemplu de bază despre modul în care puteți parcurge unele valori de șir (definite în instrucțiunea for):
pentru numele în John Jack Mary
do
echo „Numele meu este $nume”
Terminat
Unde:
- Nume = variabilă pentru a stoca valorile șirului
- do = comandă pentru a imprima rezultatul
- ecou = comanda print
- Terminat = comandă de ieșire pentru buclă
Ieșire:
Această buclă for va repeta de trei ori, așa cum există doar Trei valorile șirului specificate în pentru afirmație.
2. Buclă prin șiruri cu condiții
Ce se întâmplă dacă doriți să treceți unele condiții logice pentru a termina bucla la jumătatea drumului? În acest scop, puteți utiliza instrucțiuni logice, cum ar fi DACĂ afirmație. Declarația IF controlează modul în care va funcționa bucla și ce ieșire se va imprima ca rezultat.
pentru element în Hidrogen Heliu Litiu Beriliu; do
dacă [[ "$element" == 'Litiu' ]]; atunci
pauză
fi
echo „Element: $element”
Terminat
ecou „Totul gata!”
Legate de:Cum să utilizați bucle cu liste în PythonDe îndată ce valoarea elementului este egală cu Litiu, bucla se termină și rezultatul este imprimat. Bucla rulează până când condiția nu mai este îndeplinită.
Deoarece litiul este al treilea în lista de valori, bucla va rula timp de două iterații înainte de a imprima rezultatul final Totul este gata!.
Rularea buclelor în Linux Bash
Buclele sunt o parte esențială a structurii shell-ului Linux, care poate îmbunătăți foarte mult funcția scripturilor Linux.
Dacă trebuie să imprimați ieșiri repetitive, nu există nimic mai bun decât buclele în scripturile Bash. După cum am menționat mai devreme, buclele sunt disponibile în aproape orice limbaj de programare, iar Python nu face excepție. Eliminați repetarea și trăiți după codul DRY (Nu vă repetați).
Buclele For sunt o abilitate de programare esențială. Aflați cum să le folosiți în Python aici.
Citiți în continuare
- Programare
- Linux
- Linux
- Linux Bash Shell
- Programare
Gaurav Siyal are doi ani de experiență în scris, scriind pentru o serie de firme de marketing digital și documente despre ciclul de viață al software-ului.
Aboneaza-te la newsletter-ul nostru
Alăturați-vă buletinului nostru informativ pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!
Click aici pentru a te abona