如何编写每 N 行仅输出一行的 unix 过滤器
假设用以下行提供过滤器标准输入:
line 1
line 2
line 3
line 4
line 5
line 6
line 7
line 8
line 9
line 10
如果有人告诉我如何编写一个仅打印每 4 行的脚本,就上面的示例输入而言,那就更好了:
line 1
line 5
line 9
Suppose to feed the filter standard input with these line:
line 1
line 2
line 3
line 4
line 5
line 6
line 7
line 8
line 9
line 10
It would be nicer if someone tell me how to write a script that prints only every 4 lines, in the case of the example input above:
line 1
line 5
line 9
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
也就是说,您的答案是“
awk 'NR % 4 == 1'
”。That is, your answer is "
awk 'NR % 4 == 1'
".当然,将 4 替换为您想要的任何值。
Replace 4 by whatever value you want of course.
(GNU
sed
。未在 OSX 等上测试)(GNU
sed
. Not tested on OSX, etc.)