Linux script to prompt for password

Linux do not provide any special or specific command to read password. However, bash shell comes with builtin command called read. It read date from the standard input (keyboard), or from file descriptor FD if the -u option is supplied. General syntax is as follows:
read -s -p "Password: " VARIABLE

Where,

  • -s: Do not display password on screen. It causes input coming from a terminal/keyboard to not be echoed
  • -p: "Password: ": Display text message
  • VARIABLE: Bash variable in which your password stored

For example, try out following example at shell prompt:
$ read -s -p "Enter Password: " mypasswordOutput:

Enter Password:  

Now display password:
$ echo $mypassword See complete script to accept password using read command.

Want to read Linux tips and tricks, but don't have time to check our blog everyday? Subscribe to our daily email newsletter to make sure you don't miss a single tip/tricks. Subscribe to our weekly newsletter here!

{ 4 comments… read them below or add one }

1 Dave 08.17.06 at 2:19 am

Thanks!

2 Tukur Dan-Asabe 09.12.06 at 8:28 am

Please I want to y1, y2 and y3 to have values piped in by the pipe (|) and read to read from the file and asign them to the variables but

export tukur=2
test is a file contain 3 columns say: aa bb cc
after excuting the following command y1, y2, y3 dont contain anythin pls could someone help?

tail -n +$tukur home/tukur/test | read -r y1 y2 y3

Thank you,
Tukur Dan-Asabe.

3 nixcraft 09.12.06 at 2:13 pm

Tukur,

Assuming that your file.txt is as follows:
val1 val2 val3

Here is a shell script:

#!/bin/sh
while read line
do
# store field 1
F1=$(echo $line|cut -d” ” -f1)
# store field 2
F2=$(echo $line|cut -d” ” -f2)
# store field
F3=$(echo $line|cut -d” ” -f3)
echo $F1 ” ” $F2 ” ” $F3
done < file.txt

Var $F1 $F2 and $F3 stores the value. If you need more help try out shell scripting forum @ http://forum.cyberciti.biz/

4 Tukur Dan-Asabe 10.19.06 at 8:58 am

Thanks nixcraft,

Leave a Comment

You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Previous post: How Linux file permissions work

Next post: Where are the passwords of the users located in Linux?