Najprv skontrolujte základnú syntax príkazu „read“:
čítať [voľba] premennejPoužitie príkazu „čítať“ znamená, že komunikujete s Bashom a získavate informácie od používateľa. Uloží hodnotu do premennej, ale bez „$”Podpísať. Tento pojem budete môcť lepšie pochopiť na príklade.
Príklad 1: Použitie príkazu „čítať“ v skripte Bash
Na dôkladnejšie preskúmanie príkazu „čítanie“ vytvoríme jednoduchý skript, ktorý bude vyžadovať meno používateľa. Najskôr otvorte ľubovoľný textový editor; pre tento tutoriál používam textový editor Vim kvôli mnohým užitočným funkciám. Ak chcete nainštalovať Vim, vykonajte v termináli nasledujúci príkaz:
$ sudo apt nainštalovať vimPotom do textového súboru zadajte nasledujúci text:
#! \ bin \ bashecho „Prosím, zadajte svoje meno“
prečítať meno
echo „Vaše meno je“ $ name
Uložte súbor s akýmkoľvek menom a potom stlačte Esc a napíš „: w readcom.š.„Ak chcete spustiť skript, zadajte nasledujúci príkaz:
$ bash readcom.šVyššie uvedený skript požiada používateľa, aby napísal svoje meno. Príkaz „čítať“ potom uloží vstup od používateľa. V ďalšom riadku sa vytlačí meno, ktoré zadal používateľ.
Príklad 2: Zjednodušenie kódu pomocou operátora „prompt“
Vyššie uvedený príklad možno ďalej zjednodušiť pomocou „výzva”Operátor. Napíšme vyššie uvedený príklad, aby sme pochopili kód:
#! / bin / bashread -p meno "Prosím, zadajte svoje meno"
echo „Vaše meno je“ $ name
Príklad 3: Skrytie vstupu používateľa pomocou operátora „tajný / tichý“
„-s”Možno použiť na skrytie vstupu užívateľa. Nasledujúci príklad skriptu Bash ukazuje, ako používať operátor „-s“:
#! / bin / bashread -p užívateľské meno „Prosím, zadajte svoje užívateľské meno“
read -s -p „Prosím, zadajte svoje heslo“ $ heslo
Príklad 4: Obmedzenie dĺžky znaku
„-nPríznak ”možno použiť na pridanie obmedzenia počtu znakov, ktoré môže užívateľ zadať.
#!/ bin / bashread -n 8 -p „Prosím, zadajte svoje užívateľské meno nepresahujúce 8 znakov“ užívateľské meno
echo „Vaše používateľské meno je“ $ používateľské meno
S voľbou „-n“ môže užívateľ napísať menej ako osem znakov. Ak chcete ďalej obmedziť dĺžku vstupu,-NMôže byť použitý príznak „“, ktorý obmedzuje odpoveď používateľa na presne osem znakov.
Príklad 5: Získanie vstupu v poli
Užívateľský vstup je možné prijať aj do poľa s „-a”Vlajka. Napríklad, aby sme naraz dostali meno, vek a e-mailovú adresu používateľa, môžeme použiť pole. Pozrime sa na príklad:
#! / bin / bashecho „Prosím, zadajte svoje meno, vek a e-mail“
read -a pole meno vek email
echo „Vaše meno, vek a e-mailová adresa sú: $ pole [@] meno, vek e-mail“
echo „Vaše meno a vek sú: $ pole [@]: 0: 1 vek mena“
echo „Vaša e-mailová adresa je: $ array [2] email“
- „$ Array [@]“ bude prechádzať cez všetky premenné.
- Ak chcete iterovať prostredníctvom indexov 0 až 1, použite „$ array [@]: 0: 1“ s názvami premenných.
- Na získanie hodnoty konkrétnej premennej v konkrétnom indexe použite „$ pole [2]“ s názvom premennej.
Príklad 6: Pridanie časového limitu k príkazu „čítanie“
Ako naznačuje názov príkazu, časový limit je možné pridať ako podmienku načítania kódu pomocou príznaku „-t“, ktorý umožňuje používateľovi zadať informácie o konkrétnom čase. V opačnom prípade sa program presunie na ďalší riadok kódu.
#! \ bin \ bashecho „Čo je hlavné mesto Japonska? Odpovedzte do 5 sekúnd “
prečítať -t 5 odpoveď
if [„$ answer“ = „tokyo“] || [„$ Answer“ = „Tokio“];
potom
echo „Vaša odpoveď je správna!“
inak
echo „Vaša odpoveď je nesprávna!“
fi
Záver
Získavanie vstupov zo vstupov používateľov je jednou z najdôležitejších častí programovania, vďaka čomu budú vaše programy interaktívnejšie. Tento článok vám ukázal, ako používať príkaz „čítať“, jeden z kľúčových príkazov v skriptovaní Bash. V tomto článku ste sa dozvedeli o niektorých rôznych prístupoch, ktoré môžete použiť pri príkaze „čítať“, od základných operátorov príznakov po pokročilých operátorov.