私の目標は、文字列から最初の単語を取得して 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=$' ';
喜びはありません。
では、どうすればこのタスクを達成できますか?