我在 Zsh 中做过:
array={geometry, analysis, topology, graph theory, calculus}
echo $array
然后我想在每个元素中添加单词“math:”,例如“math:calculus”:
while (( i++ < 10)); { echo math:$array[i] }
但它不起作用?为什么?
我在 Zsh 中做过:
array={geometry, analysis, topology, graph theory, calculus}
echo $array
然后我想在每个元素中添加单词“math:”,例如“math:calculus”:
while (( i++ < 10)); { echo math:$array[i] }
但它不起作用?为什么?
在 zsh 中对我来说工作正常,分配从:
至
但是 zsh 有很多选项可以改变它的行为。也许输出“setopt”可能会有所帮助。
做就是了:
或检查
RC_EXPAND_PARAM
表格${^var}
。Welp,我要在这里冒险(因为我不接受支持代码是正确的)并说“echo math:$array[i]”缺少美元符号,应该是“echo数学:$array[$i]"
遍历数组效果更好,
for
因为您不会像代码那样过度运行结尾(除非您使用 ${#array[*]} 将限制设置为数组的大小)。另外,我假设您不希望将逗号作为字符串的一部分包含在内,并且您应该为数组使用括号而不是花括号。