【发布时间】:2021-07-16 18:20:28
【问题描述】:
在 Bash 中,给定一个关联数组,我如何找到最长键的长度?
说,我声明myArray如下图:
$ declare -A myArray=([zero]=nothing [one]='just one' [multiple]='many many')
$ echo ${myArray[zero]}
nothing
$ echo ${myArray[one]}
just one
$ echo ${myArray[multiple]}
many many
$
我可以使用下面的单线得到它
$ vSpacePad=`for keys in "${!myArray[@]}"; do echo $keys; done | awk '{print length, $0}' | sort -nr | head -1 | awk '{print $1}'`;
$ echo $vSpacePad
8
$
我正在寻找像下面这样更简单的东西,但不幸的是,这些只是给出了数组中的项目数。
$ echo "${#myArray[@]}"
3
$ echo "${#myArray[*]}"
3
【问题讨论】:
标签: arrays bash max maxlength associative