logo

Lue käyttäjän syöte

Tässä aiheessa opimme lukemaan käyttäjän syötteen päätteestä ja komentosarjasta.

Bash-käyttäjän syötteen lukemiseen käytämme sisäänrakennettua Bash-komentoa nimeltä lukea . Se ottaa syötteen käyttäjältä ja määrittää sen muuttujalle. Se lukee vain yhden rivin Bash-kuoresta. Alla on syntaksi sen toteuttamiselle.

Syntaksi

 read 

Seuraa annettuja esimerkkejä lukeaksesi käyttäjän syötteen Bash-skriptistä:

Esimerkki 1:

Tässä esimerkissä luemme sekä yksittäiset että useat muuttujat Bash-komentosarjasta käyttämällä read-komentoa.

Ohjelmoida:

 #!/bin/bash # Read the user input echo 'Enter the user name: ' read first_name echo 'The Current User Name is $first_name' echo echo 'Enter other users'names: ' read name1 name2 name3 echo '$name1, $name2, $name3 are the other users.' 

Katso Bash-konsoli:

Lue käyttäjän syöte

Lähtö:

Lue käyttäjän syöte

Mitä tapahtuu, jos emme välitä mitään muuttujaa read-komennolla?

Jos emme välitä mitään muuttujaa read-komennolla, voimme välittää sisäänrakennetun muuttujan nimeltä VASTAA (etuliite tulee olla $-merkki), kun syöte näytetään. Se voidaan selittää alla olevan ohjelman avulla:

maven asennus

Ohjelmoida:

 #!/bin/bash # using read command without any variable echo 'Enter name : ' read echo 'Name : $REPLY' 

Bash-konsolissa:

Lue käyttäjän syöte

Lähtö:

Lue käyttäjän syöte

Esimerkki 2:

Tässä esimerkissä syötämme syötteen samaan PROMPTiin käyttämällä -p komentorivin vaihtoehto seuraavasti:

 read -p PROMPT 

Ohjelmoida:

 #!/bin/bash read -p 'username:' user_var echo 'The username is: ' $user_var 

Katso Bash-konsoli:

Lue käyttäjän syöte

Lähtö:

Lue käyttäjän syöte

Esimerkki 3:

Tämän esimerkin tarkoituksena on pitää syöttö äänettömässä tilassa niin, että mikä tahansa käyttäjän komentorivillä syötetty syöttö piilotetaan muille.

arraylist menetelmät

Joten välitämme käyttäjänimen ja piilotamme salasanan (hiljainen tila) käyttämällä komentorivin valintoja (-s, -p) tavallisesti seuraavasti:

 read -sp PROMPT 

Missä -s sallii käyttäjän pitää syötteen äänettömässä tilassa ja -p syötteen uudessa komentokehotteessa.

merkkijonomenetelmiä

Ohjelmoida:

 #!/bin/bash read -p 'username : ' user_var read -sp 'password : ' pass_var echo echo 'username : ' $user_var echo 'password : ' $pass_var 

Katso Bash-konsoli:

Lue käyttäjän syöte

Lähtö:

Lue käyttäjän syöte

HUOM: klo 5thskriptin rivillä, olemme antaneet tyhjennetyn rivin echo-komennolla, koska jos emme tee sitä tyhjäksi, se antaa tulosteen sekä salasanalla että käyttäjätunnuksella samassa PROMPTissa kuin alla oleva kuva.

Lue käyttäjän syöte

Joten kirjoita skripti lisäämällä tyhjä kaiku-komentorivi.

Esimerkki 4: Tässä esimerkissä syötetään useita syötteitä taulukon avulla. Käytä siis komentorivivaihtoehtoa -a seuraavasti:

 read -a 

Missä -a auttaa skriptiä lukemaan taulukon, ja muuttujan_nimi viittaa taulukkoon.

Ohjelmoida:

 #!/bin/bash # Reading multiple inputs using an array echo 'Enter names : ' read -a names echo 'The entered names are : ${names[0]}, ${names[1]}.' 

Katso koodi Bash-konsolista:

Lue käyttäjän syöte

Lähtö:

Lue käyttäjän syöte