如何复制巨型文件的前几行,并使用一些Linux命令在其末尾添加一行文本?

如何复制一个巨型文件的前几行并在其末尾添加一行文本,使用一些Linux命令?

head命令可以得到前n行。 变化是:

 head -7 file head -n 7 file head -7l file 

这将得到名为"file"的文件的前7行。 要使用的命令取决于您的head版本。 Linux将与第一个一起工作。

要将行追加到同一文件的末尾,请使用:

 echo 'first line to add' >>file echo 'second line to add' >>file echo 'third line to add' >>file 

要么:

 echo 'first line to add second line to add third line to add' >>file 

在一击中做到这一点。

所以,把这两个想法结合在一起,如果你想得到input.txt文件的前10行到output.txt并附加一个带有五个"="字符的行,你可以使用如下所示:

 ( head -10 input.txt ; echo '=====' ) > output.txt 

在这种情况下,我们在子shell中执行两个操作,以便将输出stream合并为一个,然后用于创build或覆盖输出文件。

我假设你想要实现的是在文本文件的前几行之后插入一行。

 head -n10 file.txt >> newfile.txt echo "your line >> newfile.txt tail -n +10 file.txt >> newfile.txt 

如果您不想从文件中删除这些行,请跳过尾部。

前几行: man head

追加行:在Bash中使用>>运算符(?):

 echo 'This goes at the end of the file' >> file