1

我有一个包含以下格式数据的文本文件。

1 0 0
2 512 6
3 992 12
4 1536 18
5 2016 24
6 2560 29
7 3040 35
8 3552 41
9 4064 47
10 4576 53
11 5088 59
12 5600 65
13 6080 71
14 6592 77
15 7104 83

我想打印 $1 > 1000 的所有行。

awk 'BEGIN {$1 > 1000} {print "  " $1 "  "$2 "  "$3}' graph_data_tmp.txt

这似乎没有给出我期望的输出。我做错了什么?

4

2 回答 2

4

你可以这样做 :

awk '$1>1000 {print $0}' graph_data_tmp.txt

print $0将打印该行的所有内容

如果要打印第 1000 行/ROW 之后的行内容,则可以通过替换$1NR. NR 代表行数。

awk 'NR>1000 {print $0}' graph_data_tmp.txt
于 2013-08-28T01:52:40.607 回答
4

所有你需要的是:

awk '$1>1000' file
于 2013-08-28T03:09:39.077 回答