shell中如果vis[65]=1,那么[[ ${vis[A]} -eq 1 ]]是对的吗
时间: 2023-11-03 13:18:28 浏览: 56
不是对的,因为`${vis[A]}`会被解释为`${vis}`后面紧跟着一个空字符串和字符`A`,所以它实际上相当于`${vis}`。如果想要访问关联数组`vis`中键为`A`的元素,可以改为`${vis["A"]}`或`${vis[A]}`(需要将`A`放在花括号中,以避免与后面的字符粘在一起被解释为变量名的一部分)。因此,正确的写法应该是`[[ ${vis["A"]} -eq 1 ]]`或`[[ ${vis[A]} -eq 1 ]]`。
阅读全文