パラメータ配列のbashインデックスを取得するには?

パラメータ配列のbashインデックスを取得するには?

パラメータインデックスが必要です。

そしてダミーvarを通して得ることができます。

dummy=( $@ )
echo ${!dummy[@]}

しかし、それらを得るための直接的な方法はありますか?

$!@ ... not working
$!* ... not working

... またはそのようなもの?

注:arr varを持たない元の関数は次のとおりです。

function indexof()
{  search="$1"; shift; arr=( $@ ) 
   for i in "${!arr[@]}"; do [ "$search" == "${arr[$i]}" ] && return $i; done
   return -1
}

ベストアンサー1

パラメータ数に基づいて計算できます。

seq ${#@}

おすすめ記事