Синтакса:
- за декларацију петље:
изјаве
Први део се користи за иницијализацију променљиве за покретање за петља. Други део садржи услов прекида за контролу итерације петље и петља ће се наставити све док услов не буде тачан. Последњи део ће повећати или умањити променљиву иницијализације на основу првог дела.
- фор-ин декларација
изјаве
фор-ин петља се користи за оне задатке код којих број итерација петље није фиксиран. фор-ин петља се углавном користи за рашчлањивање низа или листе података. Петља чита сваки податак из низа или листе и чува вредност у променљивој у свакој итерацији.
Пример-1: Коришћење једноставне фор петље
Једноставна петља фор се користи у следећој скрипти. Ево, бројач променљива је иницијализована са 10 и петља ће се завршити када вредност бројач је мање од 5. Скрипта ће исписати бројач вредности од 10 до 5. Покрените команду са терминала.
$ ецхо | авк 'фор (бројач = 10; бројач> = 5; бројач--)принт "Руннинг фор", бројач, "пута."," \ н "; '
Излаз:
Следећи излаз ће се појавити након извршавања наредбе.
Пример-2: Коришћење фор-ин петље за читање низа
Низ под називом Цустомер је декларисан у следећој скрипти где је цлиент ид поставља се као индекс низа и као кориснички име поставља се као вредност низа. фор-ин Петља се овде користи за итерацију сваког индекса из низа и испис имена купца. Покрените скрипту са терминала.
$ ецхо | авк 'БЕГИН Купац ["4587"] = "Неил Јохнсон";Купац ["8953"] = "Елла бинте Назир";
Купац ["3455"] = "Бруце Хислоп";
Купац ["6335"] = "Исабелла";
ЕНД фор (и у Кориснику)
испис "Име", и, "је", купац [и]
'
Излаз:
Следећи излаз ће се појавити након извршавања скрипте.
Пример-3: Коришћење угнежђене фор петље
Када је фор петља декларисана под другом фор лооп, тада се назива угнеждена фор лооп. Спољна петља која се користи у овој скрипти поновит ће се 2 пута, а унутрашња петља 3 пута. Дакле, испис за извршавање извршиће се, (2Кс3 = 6) 6 пута. Покрените скрипту са терминала.
$ ецхо | авк 'ЕНД фор (и = 1; и<=2; i++)за (ј = 1; ј<=3; j++)
испиши "Итератинг ров", и, "анд цолумн", ј, "\ н"; '
Излаз:
Следећи излаз ће се појавити након покретања скрипте.
Пример-4: Коришћење фор петље са наредбом бреак
пауза наредба се користи у било којој петљи за прекидање петље прије достизања услова прекида на основу одређеног услова. У следећем скрипту, фор петља ће почети од 3 и завршава се када вредност и је веће од 20. Али када вредност од и биће једнако променљивој нум тада ће услов иф бити тачно и петља ће се завршити за пауза изјава.
$ ецхо | авк 'ПОЧЕТАК нум = 7; ЕНД фор (и = 3; и<=20; i++)иф (и == нум) бреак;
иначе
испис "Тренутна вредност и =", и, "\ н"; '
Излаз:
Овде, ако је услов нетачан за четири итерације када вредност и је 3,4,5 и 6. Дакле, следећи излаз је одштампан за четири итерације.
Пример-5: Употреба фор петље са наредбом цонтинуе
Израз Цонтинуе користи се у било којој петљи да би се изоставио било који израз заснован на било ком одређеном услову. Низ именован производа је декларисано у следећем скрипту. фор-ин петља се користи за итерацију низа и проверу сваке вредности са „Оффице софтвер„. Ако се вредност подудара, исписат ће се недоступна порука изостављањем доступне поруке за наставак, у супротном ће се исписати недоступна порука. Покрените скрипту са терминала.
$ ецхо | авк 'БЕГИН производ ["1001"] = "Антивирус";продуцт ["1002"] = "Канцеларијски софтвер";
продуцт ["1003"] = "Софтвер за цртање";
продуцт ["1004"] = "ХДД";
продуцт ["1005"] = "ДВД"; ЕНД за (и у производу)
иф (производ [и] == „Оффице софтвер“)
штампани производ [и], "није доступан \ н";
Настави;
штампани производ [и], "доступан је", "\ н"; '
Излаз:
Следећи излаз ће се појавити након покретања скрипте.
Пример-6: Коришћење фор петље у авк датотеци
Направите текстуалну датотеку са именом продаја.ткт и додајте следећи садржај да бисте увежбали овај пример.
продаја.ткт
2015 700002016 80000
2017 83000
2018 86000
2019 90000
Направите авк датотеку са именом цал_сал.авк са следећом скриптом за израчунавање укупног износа продаје датотеке продаја.ткт. Друго поље садржи годишњи износ продаје у датотеци продаја.ткт. У сценарију, продаја низ ће чувати све вредности другог поља и сума променљива је иницијализована са 0 да би се додале све вредности од продаја низ. Следећи, фор-ин петља се користи за итерацију сваког елемента продаја низ и додајте вредност помоћу сума променљива. На крају, испис за испис се користи за испис вредности сума променљива за приказ укупног износа продаје.
цал_сал.авк
продаја [и ++] = 2 УСД;
сума = 0;
КРАЈ
за (и у продаји)
сума = сума + продаја [и];
испис "Укупни износ продаје =" сума;
Покрените следећу наредбу да бисте извршили скрипту цал_сал.авк датотека.
$ авк -ф цал_сал.авк продаја.тктИзлаз:
Постоји 5 записа у продаја.ткт датотека и збир износа продаје је 409000 који се штампа након извршавања скрипте.
Закључак:
У овом водичу је покушано објаснити различите употребе фор петље у наредби авк. Надам се да ће читалац добити јасну идеју о коришћењу фор петље у авк скрипти и да ће бити у могућности правилно га користити у авк програмирању.