Možnosti príkazu seq:
Môžeš použiť nasl príkaz pomocou nasledujúcich možností.
-v
Táto možnosť sa používa na vloženie čísel s úvodnými nulami na vytlačenie všetkých čísel s rovnakou šírkou.
-f formát
Táto možnosť sa používa na tlač čísel v konkrétnom formáte. Plávajúce číslo je možné formátovať pomocou znakov %f, %g a %e ako konverzných znakov. Predvolene sa používa %g.
-s reťazec
Táto možnosť sa používa na oddelenie čísel reťazcom. Predvolená hodnota je nový riadok („ n“).
Príklady príkazu seq:
Príkaz seq môžete použiť tromi spôsobmi. Môžete použiť iba hornú hranicu alebo hornú a dolnú hranicu alebo hornú a dolnú hranicu s prírastkom alebo znížením hodnoty každého kroku. Rôzne použitia príkazu seq s možnosťami sú uvedené v nasledujúcich príkladoch.
Príklad-1: seq príkaz bez možnosti
Keď sa použije iba horná hranica, číslo začne od 1 a v každom kroku sa zvýši o jednu. Nasledujúci príkaz vytlačí číslo od 1 do 4.
$nasl 4
Výkon:
Keď sú dve hodnoty použité s príkazom seq, potom prvá hodnota bude použitá ako počiatočné číslo a druhá hodnota bude použitá ako koncové číslo. Nasledujúci príkaz vytlačí číslo od 7 do 15.
$nasl 7 pätnásťVýkon:
Keď použijete tri hodnoty s príkazom seq, potom bude druhá hodnota použitá ako hodnota prírastku alebo zníženia pre každý krok. Pre nasledujúci príkaz je počiatočné číslo 10, koncové číslo 1 a každý krok sa bude počítať znížením 2.
$nasl 10 -2 1Výkon:
Príklad 2: nasledujúce s možnosťou –w
Nasledujúci príkaz vytlačí výstup pridaním úvodnej nuly k číslu od 1 do 9.
$nasl -v0110Výkon:
Príklad 3: nasledujúce s možnosťou –s
Nasledujúci príkaz používa - ako oddeľovač pre každé poradové číslo. Poradie čísel sa vytlačí pridaním - ako oddeľovača.
$nasl -s-8Výkon:
Príklad -4: nasledujúce s možnosťou -f
Nasledujúci príkaz vytlačí 10 hodnôt dátumu počnúc od 1. Tu sa na pridanie poradového čísla s inou hodnotou reťazca použije možnosť %g.
$nasl -f '%g/04/2018' 10výkon:
Nasledujúci príkaz sa používa na generovanie postupnosti čísla s pohyblivou rádovou čiarkou pomocou %f. Tu bude číslo začínať od 3 a zvyšovať o 0,8 v každom kroku a posledné číslo bude menšie alebo rovné 6.
$nasl -f '%f' 3 0,8 6Výkon:
Príklad-5: Napíšte postupnosť do súboru
Ak chcete uložiť postupnosť čísel do súboru bez tlače v konzole, môžete použiť nasledujúce príkazy. Prvý príkaz vytlačí čísla do súboru s názvom seq.txt . Číslo sa vygeneruje od 5 do 20 a v každom kroku sa zvýši o 10. Druhý príkaz sa používa na zobrazenie obsahu seq.txt súbor.
nasledujúcich 5 10 10 20 | mačka> seq.txt$ cat seq.txt
Výkon:
Príklad-6: Použitie cyklu seq in for
Predpokladajme, že chcete vytvárať súbory s názvom fn1 až fn10 pomocou slučky for so seq. Vytvorte súbor s názvom sq1.bash a pridajte nasledujúci kód. For loop bude 10 krát iterovať pomocou príkazu seq a vytvorí 10 súborov v sekvencii fn1, fn2, fn3… ..fn10.
#!/bin/bashpreiv “nasl 10“
urobiť
dotýkať safn.$ i
hotový
Výkon:
Spustite nasledujúce príkazy na spustenie kódu súboru bash a skontrolujte, či sú súbory vytvorené alebo nie.
$bashsq1.bash$ls
Príklady slučky for s rozsahom:
Príklad 7: Pre slučku s rozsahom
Alternatívou príkazu seq je range. Cyklus range in for môžete použiť na generovanie postupnosti čísel, ako sú nasledujúce. Napíšte nasledujúci kód do súboru bash s názvom sq2.bash . Smyčka sa bude opakovať 5 krát a v každom kroku vytlačí druhú odmocninu každého čísla.
#!/bin/bashprenv {1..5}
urobiť
((výsledok= n*n))
zahodil $ n námestie=$ výsledok
hotový
Výkon:
Spustite príkaz na spustenie skriptu súboru.
$bashsq2.bash
Príklad 8: Pre slučku s hodnotou rozsahu a prírastku
Štandardne sa číslo v každom kroku zvyšuje o jeden v rozsahu ako nasledujúce. Môžete tiež zmeniť hodnotu prírastku v rozsahu. Napíšte nasledujúci kód do súboru bash s názvom sq3.bash . Smyčka for v skripte sa bude opakovať 5 krát, každý krok sa zvýši o 2 a vytlačí všetky nepárne čísla od 1 do 10.
#!/bin/bashzahodil „všetky nepárne čísla od 1 do 10 sú“
preiv {1..10..2}
urobiť
zahodil $ i;
hotový
Výkon:
Spustite príkaz na spustenie skriptu súboru.
$bashsq3.bash
Ak chcete pracovať s postupnosťou čísel, môžete použiť ktorúkoľvek z možností uvedených v tomto návode. Po dokončení tohto tutoriálu budete môcť vo svojom bash skripte efektívnejšie používať príkaz seq a for loop with range.