我刚刚开始使用 zsh,但不知道如何使用用户定义的键定义数组。
(我正在关注有关数组的文档:http://zsh.sourceforge.net/Doc/Release/Parameters.html#Array-Parameters)
➜ ~ array=(one [3]=three four)
zsh: no matches found: [3]=three four
我在这里做错了什么?有没有一种方法可以像 bash 中那样使用用户定义的索引名称来定义数组?
答案1
该语法是在54b395844030342213cacba4c569a6c5e6781c46这是第一个释放2018 年 4 月的 zsh 5.5 中。您的 zsh 版本可能比该版本更旧。
在旧版本中,您可以为每个键使用单独的分配。
array=(one)
array[3]=three
array[4]=four
请注意,如果您想要一个关联数组(以字符串作为键,而不是正整数),则必须首先使用 声明该数组typeset -A array
。