我正在运行% read -q
,然后键入一个不是y
,Y
或n
的单个字符。但是,$REPLY
中设置的值不是n
,而是我输入的字符。
read -q
的{{3}}明确说:
只读取终端中的一个字符,如果是,则将名称设置为“y” 字符为'y'或'Y',否则为'n'。
此行为在OSX 10.7上使用zsh 4.3.11(默认)和5.0.0(Homebrew)重现,但在Linux上不再生成(Ubuntu 12.04,zsh 4.3.10) - 在Linux上,$READ
中的值正如预期的那样n
。
另外,我尝试在zsh -f
下运行,结果相同(即,我认为它不在我的初始化脚本中)。
我错过了什么吗?
答案 0 :(得分:3)
这确实是个错误,已经有两年半了。 zsh-workers文章27188中的补丁无意中丢失了它。修补文章第30949条。