Looming on omane kunst, mis muudab teie töö lihtsamaks ja aitab teil korduvaid ülesandeid suhteliselt lihtsalt automatiseerida.
Kujutage ette olukorda, kus peate värskendama mitmeid numbreid või teksti ja selle asemel, et seda käsitsi teha, lasete süsteemil seda teie eest teha. See on loopimise jõud ja eelised, mida see teie jaoks lauale toob.
Silmused funktsioonina on saadaval peaaegu igas programmeerimiskeeles; Linuxi Bash pole sellest reeglist erand.
Siin on juhend, mis selgitab, kuidas kasutada kestaskriptis silmust for.
For Loopi struktuur
For-tsükli kasutamine shelliskriptides on üsna lihtne ja erinevate eesmärkide saavutamiseks saate struktuuriga manipuleerida.
Põhistruktuur on järgmine:
üksuse jaoks loendis [LIST]
teha
[KÄSUD]
tehtud
Silmuse abil saate sõltuvalt tunni vajadusest liikuda läbi numbri- ja märgiväärtuste.
Seotud:Kuidas kasutada silmuseid JavaScriptis
Siin on for-tsükli struktuur shelliskriptis:
VARIABLE jaoks 1 2 3 4 5... N
teha
käsk1
käsk2
käskN
tehtud
Esimesel real saate määrata iteratsioonide arvu. Sel viisil mainite algus- ja lõppväärtust.
Iteratsioonide arvu määravad teie määratud väärtused, samas kui koodile järgnev kood teha lause on saadud tsükli väärtus.
Loopide loomine ja käitamine Linux Bashis
Koodi kirjutamise alustamiseks avage Linuxi terminal.
Shelliskripti salvestamiseks kasutatakse tekstiredaktorit, mis prindib täitmisel soovitud tulemused. Illustreerimise eesmärgil on selles juhendis olevad käsud kirjutatud Nano tekstiredaktor.
Tüüp nano terminali käsureal, et avada tekstiredaktor, millele järgneb shelliskripti nimi.
nano ForLoops.sh
Saate muuta kestaskripti nime, mis teile meeldib. Laiendus on sh, kuna salvestate kestaskripti.
Täisarvude printimine tsüklite jaoks
Selles jaotises näitavad järgmised koodid, kuidas saab täisarvude väärtusi erinevalt printida. Kui soovite kasutada täisarvude printimiseks shelliskriptis tsüklit, võite proovida mõnda neist koodinäidetest.
1. Numbrikomplekti printimiseks looge kood
Kui redaktor avaneb, on aeg kood kirjutada.
#!/usr/bin/bash
minu jaoks 1 2 3-s
teha
kaja "Praegune # $i"
tehtud
Väljund:
Kus:
- i = muutuja nimi itereeritud väärtuste salvestamiseks
- 1 2 3 = shelliskripti for-tsükli iteratsioonide arv
- teha = käsk teatud toimingute komplekti sooritamiseks
- kaja = printige kõrval määratletud tulemused
- tehtud = silmuse lõpp
Salvestage kood tekstiredaktorisse vajutades Ctrl + X. Salvestage ja väljuge skriptist.
Seotud: Kuidas kasutada Javas For, While ja Do While silmuseid näidetega
Enne koodi käivitamist peate muutma shelliskripti õigusi.
Sisenema chmod +x millele järgneb shelliskripti faili nimi:
chmod +x Forloops.sh
Kui õigused on antud, käivitage oma shelliskriptis silmus for, tippides järgmise:
./Forloops.sh
Väljund prinditakse terminali aknas.
2. Alternatiivne viis numbrikomplekti printimiseks
Shelli skriptis on silmuse määratlemiseks alternatiivseid viise. Samuti saate lokkis sulgudes määrata tsükli iteratsioonide algus- ja lõpuväärtuse.
Siin on koodi struktuur:
for i in {1..3} # a for tsükkel määrab muutuja ja mitu iteratsiooni soovite tsükli kaudu teha
teha
echo "Praegune # $i: näide 2"
tehtud
Silmus jookseb kolm korda ja väärtused prinditakse järgmiselt.
3. Silmuskood, kasutades sammuväärtusi
Kui soovite iteratsioonides järjestikku liikuda, saate tsüklis määrata sammuväärtused. Sõltuvalt määratud väärtusest on väljundil fikseeritud vahe.
Näiteks:
minu jaoks {1..10..2}
teha
kaja "Arv = $i"
tehtud
Kus:
- i = muutuja iteratsioonide salvestamiseks
- 1..10 = tsükli käitamiseks vajalike iteratsioonide arv
- 2 = sammu väärtus
- teha = käsk väljundi printimiseks
- kaja = printimise käsk
- tehtud = tsükli väljumiskäsk
Väljund:
Väljundil on erinevus kaks, mis määrati sammulauses.
Trüki tähemärkide väärtused silmuste jaoks
Silmuste jaoks shelliskriptimine ei piirdu ainult täisarvudega. Bashis saate märkide ja stringiväärtuste tõhusaks itereerimiseks kasutada tsüklit for.
1. Looping Through Strings
Siin on põhinäide, kuidas saate teatud stringiväärtusi (määratletud lauses for):
nimeks John Jack Mary
teha
echo "Minu nimi on $nimi"
tehtud
Kus:
- nimi = muutuja stringiväärtuste salvestamiseks
- teha = käsk väljundi printimiseks
- kaja = printimise käsk
- tehtud = tsükli väljumiskäsk
Väljund:
Seda for tsüklit korratakse kolm korda, nagu on ainult kolm stringi väärtused määratud jaoks avaldus.
2. Tingimustega stringide loomine
Mis siis, kui soovite tsükli keskel lõpetamiseks läbida mõned loogilised tingimused? Sel eesmärgil saate kasutada loogilisi avaldusi, näiteks KUI avaldus. IF-lause määrab, kuidas tsükkel töötab ja milline väljund selle tulemusel prinditakse.
vesinikheeliumi elemendi jaoks Liitium-berüllium; teha
if [[ "$element" == 'Liitium' ]]; siis
murda
fi
echo "Element: $element"
tehtud
echo 'Kõik tehtud!'
Seotud:Kuidas Pythonis loenditega silmuseid kasutadaNiipea kui elemendi väärtus võrdub liitiumiga, tsükkel lõpeb ja väljund prinditakse. Silmus kestab seni, kuni tingimust enam ei täideta.
Kuna liitium on väärtuste loendis kolmas, jookseb silmus kaks iteratsiooni enne lõpliku väljundi printimist Kõik tehtud!.
Silmuste käivitamine Linux Bashis
Silmused on Linuxi kestastruktuuri oluline osa, mis võib Linuxi skriptide funktsiooni oluliselt täiustada.
Kui peate printima korduvaid väljundeid, pole Bashi skriptides midagi paremat kui tsüklid. Nagu varem mainisime, on silmused saadaval peaaegu igas programmeerimiskeeles ja Python pole erand. Lõika välja kordused ja järgi DRY (Ära korda ennast) koodi.
For Loops on oluline programmeerimisoskus. Siit saate teada, kuidas neid Pythonis kasutada.
Loe edasi
- Programmeerimine
- Linux
- Linux
- Linux Bash Shell
- Programmeerimine
Gaurav Siyal on kaheaastane kirjutamiskogemus, kirjutades mitmetele digitaalse turunduse ettevõtetele ja tarkvara elutsükli dokumentidele.
Liituge meie uudiskirjaga
Liituge meie uudiskirjaga tehniliste näpunäidete, arvustuste, tasuta e-raamatute ja eksklusiivsete pakkumiste saamiseks!
Tellimiseks klõpsake siin