2012-02-26 23 views
0
#! /bin/sh 

VAR=(fdf fef fef) 

for i in ${VAR}; do 
     echo i; 
done 

上記のコードにはエラーがあります。シェルがVARを別の文字列配列として取得し、次のような出力を得たいとします。シェルスクリプトでバリアントの文字列を分離する方法

fdf 
fef 
fef 

どうすればいいですか?ありがとう! this article

VAR=(aa bb cc) 

for i in "${VAR[@]}" 
do 
     echo $i; 
done 

さらに詳しい情報:

+2

shに配列がありません。インタプリタを配列をサポートするシェルに変更してください。移植不可能な構造を使用するスクリプトに#!/ bin/shを使用することは、すべての悪の根源です。 –

答えて

2

はこれを試してみてください。

+0

ありがとう、それは動作します!もう1つの質問ですが、どうすればそれを$で使うことができますか? test.shで失敗しましたが、$。/ test.shに失敗しました。後者の出力はエラーです... –

+0

zhf @ zhf-desktop:〜/ test $。 〜/テストの$ ./ar_test.sh ./ar_test.sh: AA BB CC zhfの@ zhf-デスクトップをar_test.sh 9:構文エラー:私は理解していない "(​​" 予期しない –

+0

@YifanZhangあなたの質問を編集し、そのエラーを生成するスクリプトを追加してください。 – cnicutar