Преглед за петљу у скрипту скривача

За петљу у Схелл Сцриптинг у овом, рецимо, ако желимо да извршимо задатак или операцију понављамо, можемо да напишемо исти код онолико много пута, што је временски захтјеван задатак, а неефикасан. Да би избегли ове врсте сценарија, можемо користити петље попут петље у програмском језику. Дакле, петља се користи за обављање одређеног задатка попут сабирања / множења или било које друге операције одређени број пута док се услов прекида не испуни у било којем оперативном систему. Не морамо поново да пишемо исти код користећи за петљу.

Синтакса за петљу

Синтакса фор петље у скрипту шкољки може се представити на различите начине као што следи:

1. Први синтаксички метод

for var in list
do
command1
command2
done

Из горњег примера имамо унапред дефинисане кључне речи или уграђене кључне речи као што су, учини, учини и ин. Док је листа листа променљивих или листа речи или листа бројева и вар је назив променљиве током те итерације. Ако није дата листа, басх ће узети позициони параметар који смо проследили у љусци. У горњем тексту за петљу извршаваће све наредбе које се налазе између обављеног и урадјеног н пута, где је н величина листе. На пример, ако је величина листе 5 са ​​бројевима од 1 до 5, током прве итерације 1 биће смештена у вар, а операције на вару вршиће тело петље фор, где се налазе команде.

2. Други начин синтаксе

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

У горњој синтакси, ако посматрамо, ова је синтакса слична синтакси фор за петљу у програмском језику ц. Ин фор петља постоје три израза где је први израз за иницијализацију, други за условну проверу и трећи за ажурирање итератора. Извршење горе за петљу започет ће овако, пре него што се покрене прва итерација екпр1, што значи да ће се иницијализација извршити након што ће се операције / наредбе између до и извршити итеративно док се екпр2 не процени на труе и након сваке итерације екпр3 ажурира итератор вриједност (бројач) тако да ће се операције изводити на сљедећем елементу или вриједности у листи или низу или низу.

Дијаграм тока - за петљу у Схелл Сцриптингу

Размотримо пример петље и расправимо ток ње користећи дијаграм тока.

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

У горњем дијаграму тока објашњавамо проток петље који се понавља преко листе датотека и постоје четири корака у току, као што су проток процеса, променљива вредност, процес и излаз. У току процеса објашњава када започиње петља фор, вриједност итератора, провјерава стање ако је задовољан, затим покреће поступак, а у супротном завршава процес. У променљивој вредности, итерацијом итерацијом, у њему ћемо добити име датотеке, као што је тектфиле.дат, а током процеса извршава ецхо изјаву где на стдоуту приказује изјаву о копирању са старим именом и новим именом. Дакле, ово је проток за петљу који се понавља преко листе улазних датотека.

Излаз:

Како Лооп делује у Схелл Сцриптингу?

Скрипта у овојници ради на следећи начин кад год схелл види кључну реч, зато зна да треба поновити скуп наредби једном за сваку ставку на листи. Сваки пут када се итерација покрене, ставка у листи додељује се променљивој вар и вар се обрађује кроз листу наредби присутних у петљи између обављања и извршења пре него што пређете на следећу ставку на листи или наредну итерацију. Вриједности у вар ћемо приступити користећи $ прије варијабле, тако да када скрипта схелл обрађује вриједност умјесто ње замјењује вриједност.

Пример:

for filename in *.txt
do
ls filename
done

У горњем програму преносимо листу .ткт датотека као улаза у петљу за фор, а назив променљиве је назив датотеке у коју ће се .ткт датотека складиштити, а затим обрађивати назив датотеке, уносећи .ткт датотеку у име датотеке, а затим исти поступак ће се понављати све док се не изврше све .ткт датотеке.

Излаз:

Примјери за петљу

До сада смо разговарали о томе како петља функционише у скрипти схелл и различитим синтаксама. Сада ћемо погледати неколико примера и проћи кроз њих и објаснити сваки његов пример

Пример # 1

Доносимо списак статичких вредности као улаза у петљу и како ће се извршити видети као испод:

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

У горњем примјеру, не бисмо требали просљеђивати улазне вриједности са, јер ће се разграничити ако то пребацимо сматрати да је разграничење такође вриједност попут „Пет“, и не бисмо требали набрајати вриједности двоструким наводницима „ако их преносимо двоструким наводницима“, скрипта схелл ће третирати све вредности као једну вредност.

Примјер о / п: Данашњи дан је: пет Тху Вед Туе Мон (ако користимо двоструке цитате)

Излаз:

Пример бр. 2

Сада погледајмо још један пример где користимо за пре листе за унос, као испод:

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

У горњем примјеру радимо исту изведбу за петљу као горњи примјер, али умјесто читања листе улаза извршит ћемо се помоћу кључне ријечи "ин". У скрипту за љуске, свака варијабла мора бити представљена двоструким наводницима, али има неколико изузетака, као што су ако користимо двоструке наводнике у $ Месецу изнад за линију петље, онда ће све речи третирати као један ред. Дакле, ми се морамо побринути за то.

Излаз:

Пример бр. 3

Сада ћемо писати за петљу без листе уноса у наредби фор петље, а уместо ње ће бити унесен позициони аргумент у скрипту и пример, као што следи:

Омогућимо му име скрипте као сампле.сх и његов садржај као што следи:

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

У горњем примеру, улаз за петљу се преноси са листе аргумената дате скрипти, тако да ће за сваки аргумент обрадити све наредбе и приказати излаз док се сви аргументи не понове.

Излаз:

Закључак - За петљу у Схелл Сцриптингу

Коначно, ради се о петљи у скрипту шкољки. Расправљали смо о томе шта је петља у скрипту за љуске, за синтаксу петље, њен дијаграм тока који објашњава проток за петљу, како петља ради у шкољци и примере за петљу у скрипту шкољки. Надам се да ћете добро разумети петљу, како је користити у скрипти за љуске и извршити је након што прочитате овај чланак.

Препоручени чланци

Ово је водич за Фор петљу у Схелл Сцриптингу. Овде смо расправљали о уводу, како петља делује у скрипту шкољки, дијаграму тока и примеру за петљу. Можете и да прођете кроз друге наше предложене чланке да бисте сазнали више -

  1. Петље у Р
  2. Спарк СКЛ Датафраме
  3. Вишедимензионална база података
  4. Предности визуелизације података

Категорија: