我有一个用于将值放入数组的shell脚本。脚本对我来说很好。问题是,如果我将数组放在for循环中(在do和done之间),并且当我尝试打印数组长度超出循环时,即完成后,值不会更新。这是相同的代码;
function _read_value
{
count=0
array[0]="hi"
for ///some condition
do
count++
array[count]="hello"
done
echo ${#array[@]
}
当我尝试在末尾打印数组的长度时,它显示长度为1。 任何帮助将不胜感激。
答案 0 :(得分:0)
我对你的脚本及其更新值进行了一些小改动,计数也很好。(我在计数增量和循环中做了改变)
#!/bin/bash
function read_value
{
count=0
while [ $count -le 5 ]
do
array[count]="hello"
count=`expr $count + 1`
done
echo ${array[@]}
echo ${#array[@]}
}
read_value