如何在unix中将文件的第10行到第15行复制到另一个文件中?

时间:2017-11-15 02:36:43

标签: linux unix

我想将文件的第10行到第15行复制到Unix中的另一个文件中。

我有档案file1.txtfile2.txt

我想将{10}中的第10行复制到file1.txt

2 个答案:

答案 0 :(得分:9)

打开一个带有shell的终端

sed -n '10,15p' file1.txt > file2.txt

简单&容易。

如果您希望追加到最后而不是擦除file2.txt,请使用>>进行重定向。

sed -n '10,15p' file1.txt >> file2.txt
                          ^^

AWK也是一个功能强大的命令行文本操作器:

awk 'NR>=10 && NR<=15' file1.txt > file2.txt

答案 1 :(得分:1)

作为上一个答案的补充,您可以使用以下3个解决方案之一。

sed

仅打印范围内的行并将其重定向到输出文件

sed -n '10,15p' file1.txt > file2.txt

头/尾组合

在将输出重定向到文件之前,使用头部和尾部剪切文件并获得所需的范围

cat file1.txt | head -n 15 | tail -n 6 > file2.txt

<强> AWK

仅打印范围内的行并将其重定向到输出文件

awk 'NR>=10 && NR<=15' file1.txt > file2.txt