在linux中的目录中显示所有文件中的特定行

时间:2014-10-12 22:47:23

标签: linux sed

我在文件夹F中有200个文本文件。我想查看所有文件的第2-4行。我尝试过类似的东西:

$sed -n '2,5'p *.txt

但它只读取第一个文件。有人可以帮忙吗?

此外,我可能需要将这些行发送到新文件,例如:

$sed -n '2,5'p *.txt>path

我对linux的了解是基本的,所以如果你有一个完全不同的解决方案,请更具体。

2 个答案:

答案 0 :(得分:1)

awk 'FNR>1&&FNR<5' *.txt > result.txt

答案 1 :(得分:1)

这可能适合你(GNU sed):

sed -ns '2,4p' *.txt > results.txt

如果您只想捕获结果:

sed -ns '2,4w results.txt' *.txt

查看和捕获结果的另一种方法:

sed -ns '2,4!b;p;w results.txt' *.txt

请参阅here了解s调用选项。