私の目標は、文字列から最初の単語を取得して bash 配列に割り当てFIRSTWORD{i]、残りの文字列を取得して別の配列に入れることです。REST[i]ここiで、 は整数カウンターです。
私はこのアプローチを試しました:(注:厳密に言えばtmp、デバッグのためだけです)
訂正:string変数からインデックスを除外しました。である必要がstring[1]ありstring[2]ます。
string[1]="One Two Three Four"
string[2]="Five Six Seven Eight"
# etc etc
for ((i=0; i < ${#string[@]}; i++ ))
do
set -- ${string[i]}
FIRSTWORD[i]=$1
tmp="${*:2}"
REST[i]=$tmp
echo $tmp
echo ${REST[i]}
done
REST[i]"Two"等しいがtmp等しいことが判明"one tswo three"
だから私は試しました:
IFS=$'\n'; REST[i]="${*:2}"; IFS=$' ';
喜びはありません。
では、どうすればこのタスクを達成できますか?