Přehled smyčky ve skriptování prostředí

Pro smyčku v Shell Scripting v tomto, řekněme, že chceme-li provádět úlohu nebo operaci opakovaně, můžeme psát stejný kód tolikrát, kolikrát je to časově náročná úloha a také neefektivní. Abychom se těmto scénářům vyhnuli, můžeme v programovacím jazyce použít smyčky jako pro smyčky. Pro smyčku se tedy používá k provedení určitého úkolu, jako je sčítání / násobení nebo jakákoli jiná operace po určitou dobu, dokud se podmínka ukončení nesplní v jakémkoli operačním systému. Nemusíme psát stejný kód znovu a znovu pomocí smyčky.

Syntaxe pro smyčku

Syntaxi smyčky pro skriptování prostředí lze reprezentovat různými způsoby, jak je uvedeno níže:

1. První metoda syntaxe

for var in list
do
command1
command2
done

Z výše uvedeného příkladu máme předdefinovaná klíčová slova nebo vestavěná klíčová slova, jako například pro, do, done a in. Zatímco seznam je seznam proměnných nebo seznam slov nebo seznam čísel a var je název proměnné během této iterace. Pokud není seznam uveden, bash převezme poziční parametr, který jsme předali ve skořápce. Ve výše uvedeném příkazu loop provede všechny příkazy, které jsou mezi příkazy do a n, n kolikrát, kde n je velikost seznamu. Například, pokud je velikost seznamu 5 s čísly od 1 do 5, bude během první iterace 1 uložena do var a operace na var budou provedeny tělem smyčky for, kde jsou příkazy.

2. Druhá metoda syntaxe

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

Ve výše uvedené syntaxi, pokud pozorujeme, je tato syntaxe podobná syntaxi pro smyčku v programovacím jazyce c. Ve smyčce existují tři výrazy, kde první výraz je pro inicializaci, druhý pro podmíněnou kontrolu a třetí pro aktualizaci iterátoru. Provedení výše pro smyčku začne takto, před spuštěním první iterace expr1, což znamená, že inicializace bude provedena po, než operace / příkazy mezi do a done budou provedeny iterativně, dokud expr2 nevyhodnotí true a po každé iteraci expr3 neaktualizuje iterátorová hodnota (čítač), takže operace budou prováděny s dalším prvkem nebo hodnotou v seznamu, poli nebo řetězci.

Vývojový diagram - Pro smyčku v prostředí Shell Scripting

Uvažujme příklad smyčky a probereme její tok pomocí vývojového diagramu.

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

Ve výše uvedeném vývojovém diagramu vysvětlujeme tok pro smyčku, který iteruje přes seznam názvů souborů a v toku jsou čtyři kroky, jako je procesní tok, proměnná hodnota, proces a stdout. V průběhu procesu to vysvětluje, kdy začíná smyčka for, hodnota iterátoru, kontrola stavu, pokud je splněna, spustí proces, jinak proces ukončí. V proměnné hodnotě iterace iterací získáme do ní název souboru, jako je textfile.dat, a během procesu provede příkaz echo, kde zobrazí příkaz copy se starým názvem souboru a nový název souboru na stdout. Toto je tok smyčky, který iteruje přes seznam vstupních názvů souborů.

Výstup:

Jak funguje smyčka v Shell Scripting?

Pro smyčku ve shellovém skriptu funguje následující způsob, kdykoli shell uvidí klíčové slovo, protože ví, že musí opakovat sadu příkazů jednou pro každou položku v seznamu. Pokaždé, když iterace běží, je položka v seznamu přiřazena k proměnné var a var je zpracován prostřednictvím seznamu příkazů přítomných ve smyčce mezi provedením a provedením, jsou provedeny před přesunem na další položku v seznamu nebo další iteraci. K hodnotě v var budeme přistupovat pomocí $ před proměnnou, takže když ji skriptovací skript zpracuje, nahradí se hodnota v var místo ní.

Příklad:

for filename in *.txt
do
ls filename
done

Ve výše uvedeném programu předáváme seznam souborů TXT jako vstup do smyčky for a název proměnné je název souboru, do kterého bude soubor TXT ukládat a poté název souboru zpracovávat tak, že do souboru název souboru se uloží soubor TXT a poté stejný proces se bude opakovat, dokud nebudou zpracovány všechny soubory TXT.

Výstup:

Příklady smyčky

Doposud jsme diskutovali o tom, jak smyčka funguje ve shellovém skriptu a různých syntaxích. Nyní se podívejme na několik příkladů a projdeme je a vysvětlíme každý příklad toho, co dělá

Příklad č. 1

Podívejme se na seznam statických hodnot jako vstup do smyčky a jak bude spuštěna, uvidíme níže:

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

Ve výše uvedeném příkladu bychom neměli předávat vstupní hodnoty, protože oddělovač, pokud předáme, bude považovat oddělovač také za hodnotu jako „Pá“ a neměli bychom seznam hodnot pomocí dvojitých uvozovek „pokud je předáváme dvojitými uvozovkami, shell skript bude považovat všechny hodnoty za jednu hodnotu.

Příklad o / p: Dnes je: Pá Čt St Út Po (pokud použijeme dvojité uvozovky)

Výstup:

Příklad č. 2

Nyní se podívejme na další příklad, pro který používáme před vstupním seznamem, jak je uvedeno níže:

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

Ve výše uvedeném příkladu provádíme pro smyčku stejné provedení jako v předchozím příkladu, ale namísto vstupního seznamu se čtení provádí pomocí klíčového slova „in“. Při skriptování shellu musí být každá proměnná reprezentována v dvojitých uvozovkách, ale existuje několik výjimek, jako kdybychom použili dvojité uvozovky v $ Měsíc výše pro smyčkovou linii, pak bude považovat celá slova za jeden řádek. Musíme se o to postarat.

Výstup:

Příklad č. 3

Nyní budeme psát pro smyčku bez seznamu vstupů v příkazu for loop, místo toho vezme vstup z pozičních argumentů do skriptu a příkladu, jak je uvedeno níže:

Pojďme shell název skriptu jako sample.sh a jeho obsah, jak je uvedeno níže:

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

Ve výše uvedeném příkladu je vstup do smyčky předán ze seznamu argumentů poskytnutých skriptu tak, aby pro každý argument zpracoval všechny příkazy a zobrazoval výstup, dokud nebudou opakovány všechny argumenty.

Výstup:

Závěr - Pro smyčku v Shell Scripting

Nakonec jde o smyčku při skriptování prostředí. Diskutovali jsme, co je pro smyčku při skriptování shellu, pro syntaxi smyčky, její vývojový diagram vysvětlující tok pro smyčku, jak smyčka pracuje ve shellu a příklady pro smyčku při skriptování shellu. Doufám, že budete mít dobrou představu o smyčce, jak ji použít při skriptování shellu a spustit ji po přečtení tohoto článku.

Doporučené články

Toto je průvodce po smyčce For v Shell Scripting. Zde diskutujeme úvod, Jak funguje smyčka při skriptování prostředí, vývojový diagram a příklad smyčky. Další informace naleznete také v dalších navrhovaných článcích -

  1. Smyčky v R
  2. Spark SQL Dataframe
  3. Vícerozměrná databáze
  4. Výhody vizualizace dat

Kategorie: