File grep按特定行号修剪txt文件

File grep按特定行号修剪txt文件,file,sed,awk,grep,lines,File,Sed,Awk,Grep,Lines,我有一个txt文件,比如说,包含1000行。我想修剪它,获得一个包含100行的文件,由原始文件的0、10、20、30等行组成 这是不是可以通过grep或其他方式实现?谢谢这可以通过awk/sed one liner轻松完成: awk awk '!(NR%10)' file sed sed -n '0~10p' file 或 参见下面的示例:(一个线性电路将提供相同的输出) 打印前10行: kent$ seq 1000|awk '!(NR%10)'|head -10 10 20 30 40

我有一个txt文件,比如说,包含
1000行。我想修剪它,获得一个包含
100
行的文件,由原始文件的
0、10、20、30等行组成


这是不是可以通过
grep
或其他方式实现?谢谢

这可以通过awk/sed one liner轻松完成:

awk

awk '!(NR%10)' file
sed

sed -n '0~10p' file

参见下面的示例:(一个线性电路将提供相同的输出)

打印前10行:

kent$  seq 1000|awk '!(NR%10)'|head -10
10
20
30
40
50
60
70
80
90
100
总行数:

kent$  seq 1000|awk '!(NR%10)'|wc -l   
100

可通过awk/sed单层衬里轻松完成:

awk

awk '!(NR%10)' file
sed

sed -n '0~10p' file

参见下面的示例:(一个线性电路将提供相同的输出)

打印前10行:

kent$  seq 1000|awk '!(NR%10)'|head -10
10
20
30
40
50
60
70
80
90
100
总行数:

kent$  seq 1000|awk '!(NR%10)'|wc -l   
100

这个
sed
在BSD中不起作用,因此
awk
确实更好,而且更直观。@janos-thx。我没有BSD,也没有太多的BSD sed经验,我刚刚用gnu sed在linux上测试了sed。成功了。我没有将问题中的BSD视为要求。但很高兴知道这一点。谢谢。您的
awk
解决方案非常棒,只是觉得了解
sed
很好,仅此而已;-)这个
sed
在BSD中不起作用,因此
awk
确实更好,而且更直观。@janos-thx。我没有BSD,也没有太多的BSD sed经验,我刚刚用gnu sed在linux上测试了sed。成功了。我没有将问题中的BSD视为要求。但很高兴知道这一点。谢谢。您的
awk
解决方案非常棒,只是觉得了解
sed
很好,仅此而已;-)