繁体   English   中英

特定行的 AWK 打印命令

[英]AWK print command for specific rows

我的文件中有数百万条记录,我需要做的是为特定行数打印 1396 到 1400 列,如果我可以在 excel 或记事本中得到它。

用这个命令试过

awk {print $1396,$1397,$1398,$1399,$1400}' file_name

但这是针对每一行运行的。

您需要一个条件来指定要将操作应用于哪些行:

awk '<<condition goes here>> {print $1396,$1397,$1398,$1399,$1400}' file_name

例如,仅对第 50 到 100 行执行此操作:

awk 'NR >= 50 && NR <= 100 {print $1396,$1397,$1398,$1399,$1400}' file_name

(根据您想要做什么,您还可以有比这更复杂的选择模式。)

这是一个更简单的测试示例:

awk 'NR >= 3 && NR <= 5 {print $2, $3}'

如果我在包含的输入文件上运行它

1 2 3 4
2 3 4 5
3 a b 6
4 c d 7
5 e f 8
6 7 8 9

我得到输出

a b
c d
e f

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM