Prvo provjerite osnovnu sintaksu naredbe "read":
read [opcija] varijablaKorištenje naredbe "čitanje" znači da komunicirate s Bashom kako biste od korisnika dobili informacije. Sprema vrijednost u varijablu, ali bez "$”Znak. Ovaj ćete pojam moći bolje razumjeti na primjeru.
Primjer 1: Korištenje naredbe "read" u skripti Bash
Da bismo dublje ispitali naredbu "čitanje", stvorit ćemo jednostavnu skriptu koja će tražiti ime korisnika. Prvo otvorite bilo koji uređivač teksta; za ovaj tutorial koristim Vim editor teksta zbog mnogih korisnih značajki. Da biste instalirali Vim, u terminalu izvršite sljedeću naredbu:
$ sudo apt instalirati vimZatim u tekstualnu datoteku upišite sljedeće:
#! \ bin \ bashodjek "Upišite svoje ime"
pročitajte ime
odjek "Tvoje ime je" $ name
Spremite datoteku pod bilo kojim imenom, a zatim pritisnite Esc i upišite ": w čitaj.sh.”Da biste pokrenuli skriptu, izdajte sljedeću naredbu:
$ bash čitaj.shGornja skripta tražit će od korisnika da napiše svoje ime. Naredba "read" tada će spremiti unos od korisnika. Sljedeći će redak ispisati ime koje je korisnik unio.
Primjer 2: Pojednostavljivanje koda pomoću operatora "prompt"
Gornji primjer može se dodatno pojednostaviti pomoću "potaknuti”Operater. Prepišimo gornji primjer kako bismo shvatili kôd:
#! / bin / bashpročitajte -p ime "Upišite svoje ime"
odjek "Tvoje ime je" $ name
Primjer 3: Skrivanje korisničkog unosa pomoću operatora "tajno / nečujno"
"-sZastava ”može se koristiti za skrivanje unosa korisnika. Sljedeći primjer skripte Bash pokazuje vam kako koristiti operator “-s”:
#! / bin / bashpročitajte -p "Molimo unesite svoje korisničko ime" korisničko ime
read -s -p “Unesite lozinku” $ lozinka
Primjer 4: Ograničavanje duljine znakova
"-nZastava se može koristiti za dodavanje ograničenja na broj znakova koje korisnik može unijeti.
#!/ bin / bashpročitajte -n 8 -p “Molimo unesite svoje korisničko ime koje ne prelazi 8 znakova” korisničko ime
echo "Vaše korisničko ime je" $ username
Opcijom "-n" korisnik još uvijek može napisati manje od osam znakova. Da biste dodatno ograničili duljinu unosa, "-NMože se koristiti zastava koja ograničava korisnički odgovor na točno osam znakova.
Primjer 5: Dobivanje ulaza u niz
Korisnički unos također se može uzeti u niz s "-a”Zastava. Na primjer, da bismo jednim imenom dobili korisničko ime, dob i adresu e-pošte, tada možemo koristiti niz. Pogledajmo primjer:
#! / bin / bashecho "Upišite svoje ime, dob i e-poštu"
pročitajte -naziv niza dob e-pošta
echo "Vaše ime, dob i adresa e-pošte su: $ array [@] name age email"
echo "Vaše ime i dob su: $ array [@]: 0: 1 name age"
echo "Vaša adresa e-pošte je: $ array [2] email"
- “$ Array [@]” će se petljati kroz sve varijable.
- Da biste prelistavali indekse 0 do 1, upotrijebite "$ array [@]: 0: 1" s imenima varijabli.
- Da biste dobili vrijednost određene varijable na određenom indeksu, upotrijebite “$ array [2]” s imenom varijable.
Primjer 6: Dodavanje vremenskog ograničenja naredbi "čitanje"
Kao što naziv naredbe naznačuje, vremensko ograničenje može se dodati kao uvjet čitanja koda pomoću zastavice "-t", što korisnika tjera da unosi podatke za određeno vrijeme. U suprotnom, program će prijeći na sljedeći redak koda.
#! \ bin \ bashodjek „Koji je glavni grad Japana? Odgovor za 5 sekundi ”
pročitajte -t 5 odgovor
if [“$ answer” = “tokyo”] || [“$ Answer” = “Tokyo”];
zatim
echo „Vaš je odgovor točan!"
drugo
odjek „Vaš je odgovor pogrešan!"
fi
Zaključak
Dobivanje unosa od korisničkog unosa jedan je od najvažnijih dijelova programiranja, što vaše programe čini interaktivnijima. Ovaj vam je članak pokazao kako se koristi naredba "read", jedna od ključnih naredbi u Bash skriptiranju. U ovom članku saznali ste o raznim pristupima koje možete koristiti s naredbom "read", od osnovnih operatora zastave do naprednih operatora.