Kev*_*ker 1 shell awk text-processing columns
1 2 3 4
3 1 4 2
1 4 3 2
4 2 1 3Run Code Online (Sandbox Code Playgroud)
如何打印第二列中有2 的所有行。
使用awk(或其表亲gawk):
gawk '$2==2 {print $0}' inputfile
Run Code Online (Sandbox Code Playgroud)
在awk列中由 a 表示$,$1第一列、$2第二列等。整行由 给出$0。所以这个例子是:如果第 2 列等于 2,则打印整行。
编辑:正如下面的 devnull 所说:
gawk '$2==2' inputfile
Run Code Online (Sandbox Code Playgroud)
足够。要在第二列中打印 2 行,最后使用 4 行$NF,它代表字段数(即最后一列):
gawk '$2==2 && $NF==4' inputfile
Run Code Online (Sandbox Code Playgroud)