file1
次の内容を含む2つのファイルがあるとします。
message_aaa.wav テスト1(合計1個) テストタグ:aaa テスト文:テストaaa テスト文字列:テストメッセージ 通訳スコア:567 message_bbb.wav テスト1(合計1個) テストタグ:bbb テスト文:bbbテスト テスト文字列:テストbbb 通訳スコア: 972 Message_ccc.wav テスト1(合計1個) テストタグ:ccc テストドア:ccc テスト文字列:cccテスト 通訳スコア: 921
file2
以下の内容があります。
message_aaa.wav テスト1(合計1個) テストタグ:aaa テスト文:テストaaa テスト文字列:テストメッセージ 通訳スコア:55 message_bbb.wav テスト1(合計1個) テストタグ:bbb テスト文:bbbテスト テスト文字列:テストbbb 通訳スコア: 34 message_ccc.wav テスト1(合計1個) テストタグ:ccc テストドア:ccc テスト文字列:cccテスト 通訳スコア:12
CSV
3つの列がある/ファイルを作成したいと思いますxls
。最初の列はファイル名になり
、2番目の列は「説明スコア」になり、3番目の列は以下のように「説明スコア」になります。 .wav
file1
from file1
from file2
message_aaa.wav,567,55
message_bbb.wav,972,34
message_ccc.wav,921,12
ベストアンサー1
このようなawk
:
awk '/^[mM]essage_.*.wav/{
n=NR+5;i=tolower($1)
}
n==NR{
a[i]=a[i]","$4
}
END{
for ( i in a){
print i""a[i]
}
}' file1 file2
行が(値がある行番号)に設定された[mM]essage_.*.wav
変数で始まり、wavファイル名が変数aに格納されます。n
NR+5
Interpretation Score
i
index asに配列を作成するときは、n==NR
配列に($ 4)を追加します。i
Interpretation Score
END
必要に応じて、すべての配列インデックスとその値を印刷します。
Interpretation Score
ここでは、行が各テストで常に5番目の行であると仮定します。