2つのフィールドを比較し、awkを使用して何かを印刷する方法

2つのフィールドを比較し、awkを使用して何かを印刷する方法

file1以下があるとしましょう。

1,2,3,4,12,6
1,2,3,5,333,6
1,2,3,12,5,6
1,2,3,44,101,6

また、file2以下が含まれます:

22,4,111,1,6,7,12
22,4,56,55,6,7,12
22,4,12,12,6,7,12
22,4,333,102,6,7,12

私が望むのは、5thフィールドfile1値が3rd印刷されたフィールド値より大きい場合ですfile2Value 333 greater than 56

awkを使ってこれを行うにはどうすればよいですか?

ベストアンサー1

$ awk -F, 'FILENAME=="file1" {inputs[FNR]=$5} FILENAME=="file2" && inputs[FNR] > $3 {print inputs[FNR] " is greater than " $3 " on line " FNR}' file1 file2
333 is greater than 56 on line 2

おすすめ記事