Zsh Shell:由';引起的参数太多';

Zsh Shell:由';引起的参数太多';,zsh,oh-my-zsh,Zsh,Oh My Zsh,生成以下消息 n='!' && [ -n ${n} ] && echo "n=$n" 为什么? 编辑: 我正在使用zsh [: too many arguments (使用噢,我的zsh)似乎对我很好: ➔ echo $ZSH_VERSION 5.0.7 (与prezto一起) 这可能与zsh版本本身有关,因此作为“答案”很有用。对我来说似乎很好: ➔ echo $ZSH_VERSION 5.0.7 (与prezto一起) 这可能与zsh版本本身有关,因此

生成以下消息

n='!' && [ -n ${n} ] && echo "n=$n"
为什么?

编辑:

我正在使用
zsh

[: too many arguments

(使用
噢,我的zsh

似乎对我很好:

➔ echo $ZSH_VERSION
5.0.7
(与prezto一起)


这可能与zsh版本本身有关,因此作为“答案”很有用。

对我来说似乎很好:

➔ echo $ZSH_VERSION
5.0.7
(与prezto一起)


这可能与zsh版本本身有关,因此可用作“答案”。

抱歉,这不是答案。至多是一句评论。此外,它也不能帮助我找出问题所在。我将此作为“答案”发布,因为新版本的zsh没有这个问题,在花时间找出问题所在之前,我希望您可以尝试升级zsh版本,或者从
.zshrc
中删除任何自定义更改。至多是一句评论。此外,它也不能帮助我找出问题所在。我将此作为“答案”发布,因为新版本的zsh没有这个问题,在花时间找出问题所在之前,我希望您可以尝试升级zsh版本或删除zsh 5.0.8中
.zshrc
的任何自定义更改,
n='!'&&[-n${n}]&&echo“n=$n”
工作正常并产生
n=升级到ZSH5.2为我解决了这个问题。啊,刚刚看到这个。不确定问题是出在zsh 5.0.7上,还是出在我的zsh上,5.0.7也在5.0.5中工作,所以有一种可能性是这是一个短期的回归。在zsh 5.0.8中,
n='!'&&[-n${n}]&&echo“n=$n”
工作正常并产生
n=升级到ZSH5.2为我解决了这个问题。啊,刚刚看到这个。不确定问题是出在zsh 5.0.7上,还是出在我的zsh上,5.0.7在5.0.5中也起作用,所以有一种可能性是这是一种短期的回归。