如何使用awk跳过每三行

use*_*057 0 awk

有人可以帮我整理文件吗?我想根据下面的示例使用 awk 跳过每三行。

当前文件:

a
a
a
a
b
b
b
b
c
c
c
c
Run Code Online (Sandbox Code Playgroud)

期望的输出:

a
b
c
Run Code Online (Sandbox Code Playgroud)

αғs*_*нιη 7

$ awk 'NR%4==0 { print $0, "in line#", NR }' infile
a in line# 4
b in line# 8
c in line# 12
Run Code Online (Sandbox Code Playgroud)

所以:

awk 'NR%4==0' infile
Run Code Online (Sandbox Code Playgroud)

更改为awk 'NR%4==1'如果要打印第一行,然后每隔三行跳过一次。


Pra*_* BS 5

使用 GNU sed:

$ sed -n '1~4p' filename
a
b
c
Run Code Online (Sandbox Code Playgroud)