for i in "${!a[@]}"; do
if [ "${a}" -eq "$value" ]; then
index=$i
break
fi
done
echo "Index of $value is $index"
这个脚本首先定义了一个数组a和一个要查找的值value。我们将index初始化为-1,表示尚未找到该值。然后,我们用for循环遍历数组,并使用${!a[@]}获取数组的所有索引。当找到等于value的元素时,我们将index设置为当前索引并退出循环。最后,我们输出找到的索引。在这个例子中,它将输出Index of 39 is 2,因为39位于数组的第2个位置(索引从0开始)。
#!/bin/bash
#
a=(14 25 39 46 52)
value=39
for i in ${!a[@]}
do
#if [[ ${a[$i]} -eq $value ]]
if ((${a[$i]}==$value))
then
break
fi
done
echo "Index of $value is $i"
#!/bin/bash
#
a=(1 2 3 4 5 3 4)
value=4
#value=3
for i in ${!a[@]}
do
#if [[ ${a[$i]} -eq $value ]]
if ((${a[$i]}==$value))
then
echo "Index of $value is $i"
fi
done