bash スクリプトの入力パラメータを取得しようとしています。testbash.sh 4 1 2 4 5 Science ap * これらの引数を配列として取得したいのですが、$@ を使用してすべてを配列に取得します。最初の引数に基づいて、残りをサブセット化する必要があります。ここでは最初の数値が 4 であるため、2 番目の引数から 5 番目の引数までを [1 2 4 5] のような配列として保存し、残りの引数を別の配列に保存する必要があります。
私はこれを試しました
array=( $@ )
len=${#array[@]}
args=${array[@]:0:$len-${array[1]}}
echo $args
最初の部分を取得するためにこれを試みましたが、この「testbash.sh 4 1 2 4 5 Science ap *」を実行すると、式にエラー構文エラーが発生します (エラートークンは「:-4」です)。