在文件的第一行插入一个单词

Lou*_*e79 5 sed perl text-processing

输入:

firstline
secondline
thirdline
Run Code Online (Sandbox Code Playgroud)

......这里发生了一些魔法...... :)

输出:

insertedtextfirstline
secondline
thirdline
Run Code Online (Sandbox Code Playgroud)

问题:如何将插入的文本插入到文件第一行的开头?

Ste*_*itt 9

使用 GNU sed

sed -i '1s/^/insertedtext/' file
Run Code Online (Sandbox Code Playgroud)

这将用插入的文本替换第一行的开头。-i替换文本file而不是将修改后的文本发送到标准输出。


gle*_*man 7

如果需要考虑跨 unice 的可移植性,请使用ed

ed file <<END
1s/^/insertedtext/
w
q
END
Run Code Online (Sandbox Code Playgroud)


cuo*_*glm 5

POSIX 一:

$ { printf %s insertedtext; cat <./input_file; } >/tmp/output_file
$ mv -- /tmp/output_file ./input_file
Run Code Online (Sandbox Code Playgroud)