8

我正在运行,% read -q然后键入一个不是或的单个字符。但是,设置的值不是,它是我输入的字符。yYn$REPLYn

文档read -q明确说:

如果这个字符是 'y' 或 'Y' 则只从终端读取一个字符并将 name 设置为 'y' ,否则设置为 'n' 。

此行为在使用 zsh 4.3.11(默认)和 5.0.0(Homebrew)的 OSX 10.7 上重现,但在 Linux(Ubuntu 12.04,zsh 4.3.10)上不重现 - 在 Linux 上$READn正如预期的那样,中的值为 。

另外,我尝试过在zsh -f相同的结果下运行(即,我认为它不在我的初始化脚本中)。

我错过了什么吗?

4

1 回答 1

7

这确实是一个bug,已经有两年半了。zsh-workers 文章 27188 中的补丁无意中丢失了它。文章 30949 中的补丁。

于 2013-01-06T18:50:47.817 回答