我正在尝试使用函数从用户那里获取密码。
期望:当用户按下Enter并且没有输入时,什么都不应该发生。
实际行为:当用户按下时Enter,光标移至下一行,当用户输入一些字符并Enter再次按下时,我得到以下信息:
Password=xyz
xyz
xyz
这是函数:
get_password () {
read -s
if [ -z $REPLY ]; then
get_password
fi
echo $REPLY
}
$PASSWORD=$(get_password)
echo "Password $PASSWORD"
请帮我改进这个功能
你几乎就在那里。
get_password () {
read -s -p "password? " REPLY;
echo
if [[ -z $REPLY ]]; then
get_password;
else
echo $REPLY;
fi;
}
输出:
$ get_password
password?
password?
password? # Here I typed "test"
test
$ PASSWORD="$(get_password)"
password?
$ echo $PASSWORD
a password
编辑:在变量中添加了保存密码。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句