在这个例子中,我试图将一个关联数组的所有值复制到另一个数组中。我使用zsh -n
检查我的代码是否有语法错误,但是它会抛出一个test:12: bar: assignment to invalid subscript range
的错误。
#!/usr/bin/env zsh
typeset -A foo bar
foo=(
Adama "Commander"
Tigh "Executive Officer"
Roslin "President"
)
bar=()
for i in ${(k)foo}; do
# "rubbish"
bar[$i]=$foo[$i]
done
如果我取消注释# "rubbish
这一行,zsh -n
就不会再抱怨了。是我的代码有问题还是zsh -n
有问题?