2016-07-17 5 views
0

xsd拡張子を持つすべてのファイルを収集するためにgrepを使用するファイルのいくつかの名前を含むドキュメントがあります。正規表現パターンでgrepを使用すると、約18個の正しい結果が得られます。今、私はこれらの結果を配列に保存したいと思います。私は、次のbashコードを使用する:grepが配列になる

targets=($(grep -i "AppointmentManagementService[\.]" AppointmentManagementService\?wsdl)) 

そしてIは、配列サイズ印刷:

それはアレイセル内つの結果の一部のみを格納されているので、80の代わりに18であることが判明
echo ${#targets[@]} 

を。 1つのアレイセルに1つの結果だけが入ることを確認するにはどうすればよいですか?

答えて

1

文字(おそらくスペース)が内部フィールド区切り文字として解釈されるため、結果はおそらく複数のセルに分割されます。

このようにそれを実行してみてください。

IFS=$'\n' targets=($(grep -i "AppointmentManagementService[\.]" AppointmentManagementService\?wsdl)) 
関連する問題