zar*_*ara 4 shell sed awk text-processing
我想分隔第二列中的值小于特定值的那些行。
示例输入:
id1 19501112
id2 19831207
id3 20001212
id6 20000101
id10 20061213
id11 20081212
id12 20100109
id13 20101218
id14 20101212
id15 20111111
id16 20150919
id20 20141415
Run Code Online (Sandbox Code Playgroud)
我想提取那些第二个字段的值小于 20100101 的行。所以,我的输出是:
id1 19501112
id2 19831207
id3 20001212
id6 20000101
id10 20061213
id11 20081212
Run Code Online (Sandbox Code Playgroud)
请问有什么建议吗?
$ awk '$2<20100101' file
id1 19501112
id2 19831207
1d3 20001212
id6 20000101
id10 20061213
id11 20081212
Run Code Online (Sandbox Code Playgroud)
典型的 awk 程序由如下所示的命令组成:
condition { action }
Run Code Online (Sandbox Code Playgroud)
在我们的例子中,条件是第二列小于 20100101。这个条件很合理地写为$2<20100101
。因为我们没有提供action,awk 会执行默认操作,即打印该行。