処理のためにbashスクリプトからawk出力を収集する

処理のためにbashスクリプトからawk出力を収集する

フォルダ内の複数のファイルを処理するbashスクリプトにループがあります。私のループで、各ファイルに対して次の行を実行します。

awk -F":" '{ print "Name: " $1 "\t\tID:" $3 }' $file

ループ以外の処理のために、いくつかのbash変数/配列で処理されたすべてのファイルの出力を収集したいと思います。 Bashでどのようにこれを達成できますか?

ベストアンサー1

これはシェルスクリプト配列を使用して簡単に実行できます。

i=0
for file in file1 file2 ....; do
    output[$i]=$(awk -F":" '{ print "Name: " $1 "\t\tID:" $3 }' "${file}")
    i=$((${i}+1))
done

おすすめ記事