logo

Skaityti vartotojo įvestį

Šioje temoje sužinosime, kaip perskaityti vartotojo įvestį iš terminalo ir scenarijų.

Norėdami perskaityti „Bash“ vartotojo įvestį, naudojame įmontuotą „Bash“ komandą, vadinamą skaityti . Jis priima vartotojo įvestį ir priskiria jį kintamajam. Jis skaito tik vieną eilutę iš Bash apvalkalo. Žemiau pateikiama jos įgyvendinimo sintaksė.

Sintaksė

 read 

Norėdami perskaityti vartotojo įvestį iš Bash scenarijaus, vadovaukitės pateiktais pavyzdžiais:

1 pavyzdys:

Šiame pavyzdyje mes skaitome ir vieną, ir kelis kintamuosius iš Bash scenarijaus naudodami skaitymo komandą.

Programa:

 #!/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.' 

Žiūrėkite „Bash“ konsolę:

Skaityti vartotojo įvestį

Išvestis:

Skaityti vartotojo įvestį

Kas atsitiks, jei neperduosime jokio kintamojo su komanda skaityti?

Jei neperduodame jokio kintamojo su komanda read, galime perduoti įtaisytąjį kintamąjį, vadinamą ATSAKYTI (priešdėlis turi būti su $ ženklu), kai rodoma įvestis. Tai galima paaiškinti naudojant toliau pateiktą programą:

pėdos prieš pėdą

Programa:

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

„Bash“ konsolėje:

Skaityti vartotojo įvestį

Išvestis:

Skaityti vartotojo įvestį

2 pavyzdys:

Šiame pavyzdyje mes įvedame įvestį tame pačiame PROMPT naudodami -p komandinės eilutės parinktis taip:

 read -p PROMPT 

Programa:

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

Žiūrėkite „Bash“ konsolę:

Skaityti vartotojo įvestį

Išvestis:

Skaityti vartotojo įvestį

3 pavyzdys:

Šis pavyzdys skirtas išlaikyti įvestį tyliuoju režimu, kad bet kokia vartotojo įvestis komandinėje eilutėje būtų paslėpta kitiems.

java dviguba eilutė

Taigi, mes perduodame vartotojo vardą ir paslepiame slaptažodį (tylusis režimas), naudodami komandų eilutės parinktis (-s, -p), paprastai taip:

 read -sp PROMPT 

Kur -s leidžia vartotojui išlaikyti įvestį tyliuoju režimu, o -p - įvesti naujai komandų eilutėje.

df.loc

Programa:

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

Žiūrėkite „Bash“ konsolę:

Skaityti vartotojo įvestį

Išvestis:

Skaityti vartotojo įvestį

PASTABA: 5 valthscenarijaus eilutėje, mes suteikėme tuščią eilutę su echo komanda, nes jei nepadarysime jos tuščios, ji pateiks išvestį su slaptažodžiu ir vartotojo vardu tame pačiame PROMPT, kaip ir toliau pateiktame paveikslėlyje.

Skaityti vartotojo įvestį

Taigi, parašykite savo scenarijų pridėdami tuščią echo komandų eilutę.

4 pavyzdys: Šis pavyzdys yra kelių įvesčių įvedimas naudojant masyvą. Taigi naudokite komandinės eilutės parinktį -a taip:

 read -a 

Kur -a padeda scenarijui nuskaityti masyvą, o kintamojo_pavadinimas nurodo masyvą.

Programa:

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

Peržiūrėkite kodą „Bash Console“:

Skaityti vartotojo įvestį

Išvestis:

Skaityti vartotojo įvestį