Oversigt til loop i Shell-scripting

For loop i Shell Scripting i dette, lad os sige, at hvis vi vil udføre en opgave eller en operation gentagne gange, kan vi skrive den samme kode disse mange antal gange, hvilket er en tidskrævende opgave og ikke også effektiv. For at undgå disse typer scenarier, kan vi bruge loops som til loop i et programmeringssprog. Så for loop bruges til at udføre en bestemt opgave som tilføjelse / multiplikation eller enhver anden operation i et bestemt antal gange, indtil afslutningsbetingelsen er opfyldt i ethvert operativsystem. Vi behøver ikke at skrive den samme kode igen og igen ved at bruge til loop.

Syntaks for for loop

Syntaks for for loop i shell-scripting kan repræsenteres på forskellige måder som nedenfor:

1. Første syntaksmetode

for var in list
do
command1
command2
done

Fra ovenstående eksempel har vi foruddefinerede nøgleord eller indbyggede nøgleord som f.eks. For, gør, gjort og ind. Mens liste er en liste med variabler eller en liste med ord eller en liste med numre, og var er et variabelnavn under denne iteration. Hvis der ikke findes en liste, tager bash en positionsparameter, som vi sendte i shell. I ovenstående for løkke udfører den alle kommandoer, der er der mellem gør og udført i et antal gange, hvor n er størrelsen på listen. For eksempel, hvis størrelsen på listen er 5 med numre fra 1 til 5, vil der under den første iteration 1 blive gemt i var, og operationer på var vil blive udført af kroppen af ​​for loop, hvor kommandoer er der.

2. Andet syntaksmetode

for ( ( expr1; expr2; expr3 ))
do
command1
command2
….
done

I ovenstående syntaks, hvis vi observerer, er denne syntaks svarende til syntaksen for for loop i c-programmeringssprog. I for loop er der tre udtryk, hvor det første udtryk er til initialisering, det andet er til betinget kontrol, og det tredje er til opdatering af iterator. Udførelsen ovenfor for loop vil starte sådan, før start af første iteration expr1 udføres, hvilket betyder, at initialisering vil blive udført efter end operationer / kommandoer mellem do og done vil blive udført iterativt, indtil expr2 evalueres til sandt og efter hver iteration expr3 opdaterer iteratorværdi (tæller), så handlinger udføres på næste element eller værdi på listen eller array eller streng.

Flowdiagram - Til loop i Shell-scripting

Lad os overveje et eksempel på for loop og diskutere strømmen af ​​det ved hjælp af flowdiagrammet.

for filename in *.dat
do
echo cp $fname orig_$fname
done

I ovenstående flowdiagram forklarer vi strømmen for for loop, der itererer over en liste over filnavne, og der er fire trin i flowet, såsom processtrøm, variabel værdi, proces og stdout. I processtrømmen forklares det, hvornår for-loop starter, iteratorværdi, kontrollerer betingelsen, hvis den er tilfreds, kører processen, ellers afslutter processen. I variabel værdi, iteration ved iteration, vil vi få et filnavn i det, f.eks. Textfile.dat, og under processen udfører det ekkoerklæring, hvor det viser kopierklæring med et gammelt filnavn og nyt filnavn på stdout. Så dette er strømmen af ​​for loop, som itererer over listen over inputfilnavne.

Produktion:

Hvordan fungerer Loop i Shell Scripting?

For loop in shell-script fungerer på følgende måde, når shell ser nøgleordet for det ved, at det er nødvendigt at gentage et sæt kommandoer én gang for hvert element på en liste. Hver gang, når iterationen kører, tildeles et element på listen variablen var, og varen behandles gennem listen over kommandoer, der findes i løkken mellem udførelse og udført, udføres, før de flyttes til det næste punkt på listen eller næste iteration. Vi får adgang til værdien i varen ved hjælp af $ før variablen, så når shell script behandler det, erstattes værdien i varen i stedet for den.

Eksempel:

for filename in *.txt
do
ls filename
done

I ovenstående program sender vi en liste over .txt-filer som input til for-loop, og variabelnavnet er et filnavn, hvor .txt-filen gemmes og derefter behandles filnavnet ved at angive .txt-filen i filnavnet og derefter den samme proces gentages, indtil behandlingen af ​​.txt-filer er udført.

Produktion:

Eksempler på for loop

Indtil videre har vi drøftet, hvordan loop fungerer i shell script og forskellige syntakser. Lad os nu se et par eksempler og gennemgå dem og forklare hvert eneste eksempel på, hvad det gør

Eksempel 1

Lad os en liste over statiske værdier som input til for loop, og hvordan den udføres, vil se som nedenfor:

for a day in Fri Thu Wed Tue Mon
do
echo “Todays day is $day”
done

I ovenstående eksempel bør vi ikke videregive inputværdier med, som afgrænser, hvis vi videregiver, vil det betragte som afgrænser også er en værdi som "fre", og vi bør ikke liste over værdier ved hjælp af dobbeltcitater "hvis vi videregiver dem med dobbeltcitater, shell script behandler alle værdier som en enkelt værdi.

Et eksempel o / p: Dag i dag er: fre to ons ti, man (hvis vi bruger dobbelt citater)

Produktion:

Eksempel 2

Lad os nu se et andet eksempel, hvor vi bruger med til før inputlisten som nedenfor:

Month = “Jan Feb Mar Apr May Jun”
for mon in $Month
do
echo “Month is $mon”
done

I ovenstående eksempel udfører vi den samme eksekvering af for loop som eksemplet ovenfor, men i stedet for indlæsning af lister udføres ved hjælp af "in" nøgleord. I shell-scripting skal hver variabel være repræsenteret i dobbeltcitater, men der er få undtagelser, som hvis vi bruger dobbeltcitater i $ Måned ovenfor for looplinie, så behandler det hele ord som en enkelt linje. Så vi er nødt til at tage os af det.

Produktion:

Eksempel 3

Nu vil vi skrive for loop uden inputliste i for loop-sætningen, i stedet for det vil tage input fra positionelle argumenter til scriptet og eksemplet som nedenfor:

Lad os shell scriptnavnet som sample.sh og dets indhold som nedenfor:

for num
do
echo “Number is $num”
done
./sample.sh 1 2 3 4 5

I ovenstående eksempel sendes input til for loop fra listen over argumenter, der leveres til scriptet, så det for hvert argument behandler alle kommandoer og viser output, indtil alle argumenter itereres.

Produktion:

Konklusion - Til loop i Shell Scripting

Endelig handler det om loop i shell-scripting. Vi har diskuteret, hvad der er til loop i shell-scripting, for loop-syntaks, dens flowdiagram, der forklarer flowet for for loop, hvordan loop fungerer i shell og eksempler på for loop i shell scripting. Jeg håber, at du får en god forståelse af loopen, hvordan du bruger den i shell-scripting og udfører den efter at have læst denne artikel.

Anbefalede artikler

Dette er en guide til For loop i Shell Scripting. Her diskuterer vi introduktionen, How for loop fungerer i shell scripting, Flow Diagram og Eksempel på for loop. Du kan også gennemgå vores andre foreslåede artikler for at lære mere–

  1. Sløjfer i R
  2. Spark SQL Dataframe
  3. Multidimensionel database
  4. Fordele ved datavisualisering

Kategori: