In dit onderwerp leren we hoe we de gebruikersinvoer van de terminal en het script kunnen lezen.
Om de Bash-gebruikersinvoer te lezen, gebruiken we de ingebouwde Bash-opdracht genaamd lezen . Het vergt invoer van de gebruiker en wijst deze toe aan de variabele. Het leest slechts een enkele regel uit de Bash-shell. Hieronder vindt u de syntaxis voor de implementatie ervan.
Syntaxis
read
Volg de gegeven voorbeelden om gebruikersinvoer van het Bash-script te lezen:
Voorbeeld 1:
In dit voorbeeld lezen we zowel de enkele als meerdere variabelen uit het Bash-script met behulp van de leesopdracht.
Programma:
#!/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.'
Zie de Bash-console:
Uitgang:
Wat gebeurt er als we geen enkele variabele doorgeven met het leescommando?
Als we geen enkele variabele doorgeven met het leescommando, kunnen we een ingebouwde variabele doorgeven genaamd ANTWOORD (moet worden voorafgegaan door het $-teken) terwijl de invoer wordt weergegeven. Het kan worden uitgelegd met behulp van het onderstaande programma:
verschil in datums in Excel
Programma:
#!/bin/bash # using read command without any variable echo 'Enter name : ' read echo 'Name : $REPLY'
Op Bash-console:
Uitgang:
Voorbeeld 2:
In dit voorbeeld voeren we de invoer in op dezelfde PROMPT met behulp van de -p opdrachtregeloptie als volgt:
read -p PROMPT
Programma:
#!/bin/bash read -p 'username:' user_var echo 'The username is: ' $user_var
Zie de Bash-console:
Uitgang:
Voorbeeld 3:
Dit voorbeeld is bedoeld om de invoer in de stille modus te houden, zodat wat een gebruikersinvoer op de opdrachtregel ook is, voor anderen verborgen zal zijn.
dynamische array java
We geven dus een gebruikersnaam door en verbergen het wachtwoord (stille modus) door de opdrachtregelopties (-s, -p) gewoonlijk als volgt te gebruiken:
read -sp PROMPT
Waarbij -s een gebruiker toestaat de invoer in de stille modus te houden en -p in te voeren via de nieuwe opdrachtprompt.
Rudyard Kipling als uitleg
Programma:
#!/bin/bash read -p 'username : ' user_var read -sp 'password : ' pass_var echo echo 'username : ' $user_var echo 'password : ' $pass_var
Zie de Bash-console:
Uitgang:
LET OP: Bij de 5eregel van het script hebben we een blanco regel gegeven met het echo-commando, want als we deze niet leeg maken, zal deze uitvoer geven met zowel het wachtwoord als de gebruikersnaam op dezelfde PROMPT als de onderstaande afbeelding.
Schrijf dus uw script door een lege echo-opdrachtregel toe te voegen.
Voorbeeld 4: In dit voorbeeld wordt meerdere invoer ingevoerd met behulp van een array. Gebruik dus de opdrachtregeloptie -a als volgt:
read -a
Waar -A helpt het script een array te lezen, en variabelenaam verwijst naar een array.
Programma:
#!/bin/bash # Reading multiple inputs using an array echo 'Enter names : ' read -a names echo 'The entered names are : ${names[0]}, ${names[1]}.'
Zie de code op Bash Console:
Uitgang: