gpt4 book ai didi

arrays - 解释 bash 中数组长度的 ${#arrayname[@]} 语法?

转载 作者:行者123 更新时间:2023-11-29 09:33:21 24 4
gpt4 key购买 nike

我知道可以通过执行 ${#arrayname[@]} 在 bash 中获取数组的长度。

我的问题是:这只是我必须记住的内容,还是可以将此语法分解为可理解的部分?例如,@ 符号是指人们希望在何处找到索引?为什么是 #

最佳答案

# 开头的变量引用表示获取变量值的长度。对于普通变量,这意味着它的字符长度。 # 是“数字”符号,因此您可以将其理解为“变量中事物的数量”。

数组索引中的

@* 表示使用整个数组,而不是特定元素,并且不返回字符数,而是返回字符数数组元素。 * 在许多情况下用作通配符,因此这应该很容易记住。此外,$*$@ 用于表示 shell 脚本的所有参数,因此与所有数组元素的平行应该是显而易见的。

你不能只写${#arrayname},因为当你使用不带下标的数组变量时,它等同于数组的元素0。所以${#arrayname}${#arrayname[0]}是一样的,都是数组第一个元素的字符个数。

关于arrays - 解释 bash 中数组长度的 ${#arrayname[@]} 语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43265069/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com