在bash中使用脚本正确使用退格函数

时间:2015-12-27 08:56:41

标签: linux bash ubuntu terminal

我在bash中有以下代码

read -p "Enter your ID: " ID
unset PASSWORD
prompt="Enter Password:"
  while IFS= read -p "$prompt" -r -s -n 1 char
  do
    if [[ $char == $'\0' ]]
       then
         break
    fi
prompt='*'
PASSWORD+="$char"
done

实际上这段代码向用户询问密码,并且终端中的每个单词类型显示为*但是我有一个问题,当我需要删除一个字符时,这个代码不会占用退格,而是将退格显示为任何其他字符,所以我想这个代码不会将退格作为字符,它会在终端中删除单词类型。

1 个答案:

答案 0 :(得分:0)

您可以在read上使用-e option,如:

read -e -p ...