Bash Script - Hvernig á að lesa inntak notenda

Linux lesa skipun er notuð til að taka inntak notanda frá skipanalínunni. Þetta er gagnlegt þegar við viljum veita gagnvirkni notenda á keyrslutíma.

Lesin setningafræði er:

read [options] variable_name

Við getum þá notað $ skrifaðu undir framan breytuheitið til að fá aðgang að gildi þess, t.d. $variable_name.




Bash handrit til að lesa inntak notenda

Byrjaðu á því að búa til skrá með .sh framlenging, td .:

touch user_input.sh

Opnaðu síðan skrána í eftirlætisritstjóranum þínum og skrifaðu eftirfarandi:


#!/bin/bash echo 'Enter your name:' read name echo 'Enter your age:' read age echo 'Hello' $name, 'you are' $age 'years old'

Ofangreint handrit tekur nafn og aldur notanda.



Athugið:Það er engin þörf á að tilgreina tegund breytunnar sem verið er að lesa.

Til að keyra ofangreint handrit skaltu opna flugstöð og slá inn:

$ sh user_input.sh Enter your name: DevQA Enter your age: 12 Hello DevQA, you are 12 years old

Hvetja skilaboð með lestri stjórn

Til að hvetja skilaboð með lestrarskipuninni notum við -p valkostur.

Til dæmis:


$ read -p 'Enter your username: ' username

Ef við viljum ekki að stafirnir birtist á skjánum verðum við að nota -s valkostur með lestrarskipuninni. Þetta er gagnlegt þegar við erum að lesa lykilorð.

Til dæmis:

$ read -sp 'Enter your password: ' password

Bash handritið þitt til að lesa inntak notenda hér að ofan myndi líta út eins og:

#!/bin/bash read -p 'Enter your username: ' username read -sp 'Enter your password: ' password echo -e ' Your username is $username and Password is $password'

Framleiðslan er:


$ sh user_input.sh Enter your username: devqa Enter your password: Your username is devqa and Password is secret