在使用 sed
命令时,插入信息可以使用 i
命令实现,其语法为:
sed 'i\内容' 文件名
其中,内容
表示需要插入的文本信息,文件名
表示需要操作的文件名。
当使用 i
命令插入内容时,会进入编辑模式,此时需要完成以下操作:
Enter
键.
(英文句点)并按下 Enter
键这样,就能够完成 sed
命令的输入和保存过程。
具体操作示例:
# 用 sed 命令在 /etc/hosts 文件中,向第一行插入 "127.0.0.1 localhost" 的内容
sudo sed '1i\127.0.0.1 localhost' /etc/hosts
运行命令后,会进入编辑模式,此时需要按以下步骤完成输入和保存过程:
127.0.0.1 localhost
,然后按下 Enter
键.
,然后按下 Enter
键操作完成后,sed
命令就会自动保存修改,并退出编辑模式。通过 cat
命令查看文件内容,可以发现文本已经成功插入到了第一行。
你现在是在vi的编辑模式下
按下esc建 --> 输入英文冒号":" --> 输入wq --> 敲下回车既可以保存退出
如果使用sed命令直接操作文件,不需要保存,它直接修改了文件
而你放的图跟sed没有一毛钱关系,这是在vim编辑器里按下了i进入insert模式
想退出,先按esc回到底线模式,再输入:wq
我明白你的意思了:
是不是,你正在使用vim编辑一个文件,然后向使用sed的i命令在这个正在编辑的文件的某一行前面添加一行,对吧。
:%!sed '1 i\我在第一行前面插入了一行'
这样就可以使用sed命令在正在使用vim编辑的文件中进行插入操作了。
关于sed命令,你可以看我的文章:
https://blog.csdn.net/weixin_43764974/article/details/130714417?spm=1001.2014.3001.5502
如果你要保存你现在编辑的文件,按esc,然后输入:
:wq
回车,就可以保存,并退出vim编辑器了