特定の条件を満たす値を計算する方法は?

特定の条件を満たす値を計算する方法は?

たとえば、列数を含むファイルがあります。

入力ファイル

12  15  27  
5   6  48  
19  16  25  
17  23  37

など

X次の条件を満たす2列のすべての数値を計算したいと思います。 ( )6 <= X < 20

結果は3数値に対応します。156そして16

答え1

次のツールでは簡単です。awk

awk '$2>=6 && $2<20 { tot++ } END { print +tot}'

欲しいならそしてそれから彼ら

awk '$2>=6 && $2<20 { tot += $2 } END { print +tot}'

答え2

指定された条件では、必要なすべての数字を簡単に繰り返すことができます。

grep -Ec '^[0-9]+\s+([6-9]|1[0-9])\b'

関連情報