我正在 Mac OSX(ML) 上的 zsh 上学习 shell 脚本。
串的时候
test good \< bad
它给
zsh: condition expected: <
谁能解释一下?
你不能只使用标志来测试吗?
% test 1 -lt 2 && echo 'it\'s less! yay!'
% test 1 -gt 2 && echo 'ohnoes, math is broken'
顺便说一句,在这里使用您的测试,'test 1 \< 2'bash
在zsh
. 查看 zsh 文档(zshbuiltin
除其他外),似乎<
实际上是小于的正确运算符,但继续使用-lt
and -gt
。如果必须使用左尖括号,请使用以下语法:
% [[ 1 < 2 ]] && echo 'hooray for angle brackets!'
这似乎适用于我的 zsh,即zsh 4.3.11 (i386-apple-darwin12.0)
.