ksh:获取数组的最后一个元素 - 找不到命令



在我的脚本中,其中一个函数返回一个数组值,我想将其最后一个值和'cd'归入该目录

函数名称为'文件夹',它返回一个持有值的数组说 - 4.5.0 6.0 6.0 2.3.1

如果我使用-cd $(folders[-1]),我将面临以下错误-my_script.sh: line 350: folders[-1]: command not found

使用- cd ${folders[-1]},我得到- my_script.sh: line 350: folders: bad array subscript

我在这里缺少什么,谢谢

${foo[-1]}在我的ksh上工作。但是,如果不适合您,也许:

#!/bin/ksh93
foo=(1 2 3)
echo "${foo[-1]}" # Should print 3
echo "${foo[${#foo[@]} - 1]}" # Should also print 3

${#foo[@]}返回数组变量中元素的数量,因此您只需从中减去一个即可获取最后一个元素。

最新更新