GNU/Linux >> Znalost Linux >  >> Ubuntu

Bash pro smyčky s příklady

Smyčky jsou kritickými strukturami v jakémkoli programovacím jazyce a hrají roli při provádění opakujících se úloh, jejichž provádění by bylo jinak v běžném kódu těžkopádné a časově náročné. Ve skriptování bash slouží smyčky stejnému účelu a v této příručce se blíže podíváme na různé typy smyček a na to, jak se používají.

Pro smyčky

Cyklus For se používá pro iteraci přes seznam objektů nebo položek. Seznam může obsahovat čísla, řetězce, znaky nebo dokonce pole.

Smyčka for má následující strukturu.

for item in list_of_items

do

 command1

 command2

done

Vezměme si několik příkladů:

Procházení seznamu řetězců

V níže uvedeném příkladu iterujeme seznam řetězců – v tomto případě planet – který obsahuje čtyři položky. Po iteraci vytiskneme každou položku na ztracené pomocí echa příkaz.

for planet in Mercury Venus Earth Mars Jupiter 

do

 echo $planet

done

Poté přidělte oprávnění ke spuštění a spusťte for_loop.sh bash skript. Výstup zobrazí všechny položky obsažené v seznamu.

$ ./for_loop.sh

Opakování přes rozsah čísel

Pomocí cyklů for můžete také určit sekvenci v rozsahu čísel definováním počátečního a koncového bodu pomocí poskytnutého výrazu sekvence.

{START..END}

Níže uvedený příklad ukazuje cyklus for, který zobrazuje čísla od 1 do 10

for n in {0..10}

do

 echo value: $n

done

Spuštěním smyčky získáte zobrazený výstup.

Navíc můžete určit počet postupných přírůstků mezi hodnotami pomocí následujícího výrazu sekvence.

{START..END..STEPWISE_INCREMENT}

Například smyčka níže zobrazuje čísla od 1 do 10 s krokem zvýšení o 2 mezi hodnotami.

for n in {0..10..2}

do

 echo value: $n

done

Po provedení poskytuje smyčka následující výstup.

Opakování přes pole prvků

Také můžete využít smyčky k iteraci přes řadu položek. Například zde máme pole nazvané „FILMY“ s různými prvky, kterými jsou názvy filmů.

#!/bin/bash

MOVIES=('Happy Feet' 'Who killed Sara' 'Lupin' 'Money Heist' 'House of cards')

for movie in "${MOVIES[@]}"; 

do

 echo Movie: $movie

done

Když je skript spuštěn, cyklus for iteruje přes celé pole a vytiskne názvy filmů, jak je znázorněno.

Shrnutí

Jak jste si všimli, smyčky for jsou poměrně jednoduché a praktické. Vytvářejí čistší kód tím, že eliminují opakující se kód, který je pro uživatele časově náročný. Opakující se úkoly lze snadno provést v několika jednoduchých řádcích.


Ubuntu
  1. Bash pro průvodce smyčkou a příklady

  2. Skriptování v Linuxu:3 postupy pro smyčky while v Bash

  3. Pro smyčku s názvy souborů?

  1. Paralelizovat Bash For Loop?

  2. Bash Beginner Series #8:Loops in Bash

  3. Udržujeme vás ve smyčce – příklady opakování pro, Zatímco, dokud

  1. Bash If-Else prohlášení s příklady

  2. Příklady Bash for Loop a While Loop

  3. Bash for smyčky Příklady