我有以下文件:
1,A
2,B
3,C
10000,D
20,E
4000,F
我想选择计数大于 10 且小于 5000 的行。输出应为 E 和 F 。在C ++或任何其他语言中都是小菜一碟。我真的想知道如何使用linux命令来完成它。
我尝试了以下命令
awk -F ',' '{$1 >= 10 && $1 < 5000} { count++ } END { print $1,$2}' test.txt
但它只有givine 4000,F。
答案 0 :(得分:6)
只是这样做:
awk -F',' '$1 >= 10 && $1 < 5000' test.txt
您在{....}
中放置了布尔检查,并且根本不使用结果。它没有任何意义。您应该{if(...) ...}
或booleanExpression{do...}
无用的count++
print
中只有END
声明,因此只打印出最后一行。你的脚本实际上是这样的:
print the last line of the test.txt, no matter what it is.