Zsh不执行大括号扩展,但仅在使用/bin/sh
链接调用时执行。
$ /bin/sh --version
zsh 5.8 (x86_64-apple-darwin20.0)
$ zsh --version
zsh 5.8 (x86_64-apple-darwin20.0)
$ /bin/sh -c "echo {1..3}"
{1..3}
$ zsh -c "echo {1..3}"
1 2 3
怎么回事?
Brace扩展不是传统(POSIX(shell的特性。它特定于bash和zsh。
当作为/bin/sh
调用时,bash和zsh的行为就像POSIXshell,这就是为什么大括号扩展不起作用的原因。