将多字符串字符串分配给bash数组元素

时间:2013-04-05 21:31:39

标签: arrays bash

我的目标是从字符串中取出第一个单词并将其分配给bash数组FIRSTWORD{i]并取出其余字符串并将其放入另一个数组REST[i] {{1}是一个整数计数器。

我尝试了这种方法:(注意:严格来说i仅用于调试)

更正:我将索引从tmp变量中删除了。应为stringstring[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"

没有快乐。

那么,我该如何完成这项任务呢?

1 个答案:

答案 0 :(得分:1)

找到我的答案。我改变了:

REST[i]=$tmp

REST[i]="$tmp"

现在读取的数据保持在一起。

我认为这与bash以及命令行拆分和通配数据有关。