-4

是否可以使用 Linux 命令从文本文件中检索第 1、11、21、31 行的数据?

我需要对 2、12、22、32 等做同样的事情。

4

1 回答 1

5

您可以awk为此使用:

awk '(NR % 10 == 1){ print }' your_input_file

例如:

 $ seq 1 100|awk '(NR%10 == 2){print}'
2
12
22
32
42
52
62
72
82
92

正如glenn jackman指出的那样,您可以对awk脚本进行参数化以使其更易于使用。鉴于这print是默认操作,您可以简单地编写:

 $ seq 1 20|awk -v step=10 -v idx=3 'NR%step==idx'
3
13
于 2012-04-29T07:51:47.653 回答