我的目标是从字符串中取出第一个单词并将其分配给 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=$' ';
没有喜悦。
那么,我该如何完成这个任务呢?