次のようなファイルがあります。
1 4
2 4
3 5
4 4
5 4
6 1
7 1
8 1
9 4
10 4
12 1
13 1
14 1
15 1
16 2
19 3
20 1
21 1
26 1
28 3
24 4
29 4
30 1
列 1 はシリアル番号で、列 2 は値です。たとえば、特定の範囲内の値の合計を計算したい: (column1 から) 2 から 7 の間の column2 の値を合計する
私は次のawkワンライナーでこれを達成しました:
awk '{if ($1 >= 2 && $1 <= 7) x += $2 } END {print x}' file_name #output is 20
問題は、他のファイル 2 から範囲を読み取りたいということです: 3-9、2-6、12-20 などから
3 9
2 6
12 20
if ステートメントで範囲を手動で入力する代わりに、file2 から AWK に範囲を渡すにはどうすればよいですか。AWK で複数のファイルを読み取る方法は?