Shell scripting (BASH) : How to accept password in script

You can use read command with -s option, which causes input coming from a terminal to not be echoed. This is useful to verify password or something else.

One line is read from the keyboard or from file descriptor FD if the -u option is supplied, and the first word is assigned to the first NAME, the second word to the second NAME, and so on, with leftover words assigned to the last NAME. Only the characters found in $IFS are recognized as word delimiters. If no NAMEs are supplied, the line read is stored in the REPLY variable. If the -r option is given, this signifies `raw' input, and backslash escaping is disabled. The -d option causes read to continue until the first character of DELIM is read, rather than newline. If the -p
option is supplied, the string PROMPT is output without a trailing newline before attempting to read. If -a is supplied, the words read are assigned to sequential indices of ARRAY, starting at zero. If -e is supplied and the shell is interactive, readline is used to obtain the line. If -n is
supplied with a non-zero NCHARS argument, read returns after NCHARS characters have been read. The -s option causes input coming from a terminal to not be echoed.

Following script, demonstrate this concept:

1) Download/view the passwordscript.bash script

2) Save the changes and execute script:
$ chmod +x passwordscript.bash
$ ./passwordscript.bash

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!

{ 2 comments… read them below or add one }

1 BuGoFf 12.08.06 at 11:42 pm

Is it possible to put the passwordscript.bash online again?

2 nixcraft 12.09.06 at 12:45 am

Hello,

Link is fixed. Sorry for any inconvenience!
http://bash.cyberciti.biz/script/passwordscript.bash.php

Regards,

Vivek

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: BASH shell: How to create empty temporary files quickly

Next post: Bash Shell Find out Linux / FreeBSD / UNIX system load average