我在 bash 中制作了一个简单的脚本,询问“你想要 $action 做什么?”。动作变量应该替换为用户在每个循环中的选择。这似乎可行,但问题是问号 (?) 的最后一个字符正在替换第一个字符“W”。我环顾四周,找不到与发生这种情况的原因相关的任何信息。
我用 cygwin 和 Ubuntu 试过这个,遇到了同样的问题。
这是代码
#!/bin/bash
readOptions () {
ed -s "do.csv" <<EOF
,p
q
EOF
}
action="do"
echo "You can press 'q' anytime to exit!"
while [ ! action = "q" ]
do
echo "What would you like to $action?"
option=$(readOptions)
echo "$option"
read action
chose_opt=( $option )
action=${chose_opt[$action]}
done
这是输出
echo 应该显示“What would you like to add?”
我认为有回车( ) 在 $action 值的末尾。