如何编写一个每N行只输出一行的unix过滤器

And*_*cia 3 unix shell scripting awk

假设使用以下行提供过滤器标准输入:

line 1 
line 2
line 3
line 4 
line 5
line 6
line 7
line 8
line 9
line 10
Run Code Online (Sandbox Code Playgroud)

如果有人告诉我如何编写一个只打印每4行的脚本会更好,在上面的示例输入的情况下:

line 1
line 5
line 9
Run Code Online (Sandbox Code Playgroud)

mat*_*mat 16

$ yes | cat -n | head -10 | awk 'NR % 4 == 1'
     1  y
     5  y
     9  y
Run Code Online (Sandbox Code Playgroud)

也就是说,你的回答是" awk 'NR % 4 == 1'".