我使用以下代码以交互方式从用户获取输入,从而允许用户更改输入而不删除整行 .
#! /bin/bash
while :
do
echo -n "prompt# "
read -e input
done
问题:
它还允许我删除"prompt#",我不希望用户在任何情况下删除"prompt# " . 我尝试在 read
命令中使用各种选项,但无法弄明白 . 我怎样才能做到这一点?
编辑:
导致问题的事件序列:
我运行了上面的脚本并输入了"hello" .
2.然后我将光标移动到"hello"和"pressed and held"退格中的'e'一段时间,导致删除"prompt# "
3.如果你没有输入任何字符,它可以正常工作,并且不会删除提示,但如果你输入一个空格或任何字符,然后按退格键,那么它会混淆提示 .
看一下下面的快照 .
Snapshot :
1 回答
来自4ae1e1的评论:
你应该使用read的内置提示支持,或者你自己 .