在Linux中的某一行添加文本到文件

use*_*459 38 linux text-processing

我想添加一个特定的行,让我们说avatar一下以文件开头的文件,MakeFile并将avatar其添加到文件的第15行.

这是如何向文件添加文本:

echo 'avatar' >> MakeFile.websvc
Run Code Online (Sandbox Code Playgroud)

这是如何将文本添加到以MakeFile开头的文件我认为:

echo 'avatar' >> *MakeFile.
Run Code Online (Sandbox Code Playgroud)

但我无法将此行添加到文件的第15行.

Sun*_*lly 69

你可以sed用来解决这个问题:

sed "15i avatar" Makefile.txt
Run Code Online (Sandbox Code Playgroud)

或使用该-i选项保存对文件所做的更改.

sed -i "15i avatar" Makefile.txt
Run Code Online (Sandbox Code Playgroud)

要更改从开始时开始的所有文件Makefile:

sed "15i avatar" Makefile*
Run Code Online (Sandbox Code Playgroud)

注意:上面15是您放置文本的兴趣点.

  • sed -i "${line_number}i ${text_to_write}" Makefile.txt (3认同)