0
我已經從文件中讀取輸入,並且文件中的每一行都將以'|'結尾。我想循環到一個數組,以便在後面的代碼中使用。這是我到目前爲止,但通過數組循環不起作用。Unix:將這些值附加到動態數組中以供將來使用
#!/bin/ksh
TEMP="abc1|abc2|abc3 1;abc4 1"
rest=$TEMP
field=()
while [ -n "$rest" ]
do
str=${rest%%\|*}
field+=("$str")
[ "$rest" = "${rest/\|/}" ] && rest= || rest=${rest#*\|}
#print $str
done
for x in ${field}
do
echo $x
done
print $ str正常,但當我循環獲取值時,我沒有得到值。 任何幫助來解決這個問題。
謝謝。
這是他需要做的加上'[@]'和引用它,如什麼。 – karakfa
請解釋它或在答案中強調它......它被標記爲太短。 (先前的評論被刪除)。 –