Bash Script - Hoe om gebruikersinvoer te lees

Die Linux lees opdrag word gebruik om 'n gebruikerinvoer vanaf die opdraglyn te neem. Dit is handig wanneer ons gebruikersinteraktiwiteit tydens looptyd wil bied.

Die geleese sintaksis is:

read [options] variable_name

Ons kan dan die $ gebruik teken voor die veranderlike naam om toegang tot die waarde daarvan te kry, bv. $variable_name.




Bash Script om gebruikersinvoer te lees

Begin deur 'n lêer met .sh te skep uitbreiding, byvoorbeeld:

touch user_input.sh

Open dan die lêer in u gunsteling redigeerder en tik die volgende in:


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

Bogenoemde skrip neem die gebruiker se naam en ouderdom in.

Nota:Dit is nie nodig om die tipe veranderlike wat gelees word, te spesifiseer nie.

Om die bogenoemde script uit te voer, maak 'n terminaal oop en tik:

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

Prompt boodskap met gelees Command

Om 'n boodskap met die leesopdrag aan te vra, gebruik ons ​​die -p opsie.

Byvoorbeeld:


$ read -p 'Enter your username: ' username

As ons nie wil hê dat die karakters op die skerm vertoon moet word nie, moet ons die -s gebruik opsie met die leesopdrag. Dit is handig as ons wagwoorde lees.

Byvoorbeeld:

$ read -sp 'Enter your password: ' password

U bash-skrip om bogenoemde gebruikersinvoere te lees, lyk soos volg:

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

Die uitset is:


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