在文档中插入
-
在首行插入
sed -i '1i onetime' a.txt
sed -i '1a onemoretime' a.txt
命令格式:sed -i ‘1[i/a] 插入内容’ 插入文件,如下图所示;
当命中为i时在第一行行前插入,为a时在第一行行后插入。
sed -i '3i again' a.txt
当然,这里以在首行插入为例,活学活用,你也可以改变插入行数,来插入你想要的位置,不过需要查找数所在行,不是特别实用,不建议使用
-
在尾部插入
在尾部插入可以使用echo命令,更加方便快捷
echo 'last line' >> a.txt
注意该命令中两个符号>>
双符号>>出现表示插入在文档最后一行,单个符号>表示覆盖你文档中的所有内容插入
- 在指定行前或行后插入
sed -i '/again/a i am here!!!' a.txt
命令格式: sed -i ‘/插入位置内容/[i/a] 你的内容’ 插入文件
- 高效与便捷________ ^符 $符号
命令格式:sed -i ‘/^为首内容/[i/a] 插入内容’ 你的文件
在指定行插入内容时候,如果我们的插入行内容过多,我们没有必要将内容全部打出来,可以使用符号^和$,分别代表匹配的以某内容为开头和以某内容为结尾
如sed -i '/^this/a head' a.txt
,表示在以this
为开头的内容之后插入head
,如下:
如sed -i '/line$/a tail' a.txt
,表示在以line
为结尾的内容之后插入tail
,如下:
在文档中删除
-
删除N行
命令格式:sed -i ‘行号d’ 你的文件
行号d可以为单行’1d’或者’2d’…
也可以指一定范围的行,如’2,5d’,表示删除第2行到第5行的数据
-
删除最后一行
命令格式: sed -i ‘$d’ 你的文件
4. 删除匹配的行
命令格式:
sed -i ‘/^匹配行开头/d’ 你的文件
sed -i ‘/匹配行结尾$/d’ 你的文件
在文档中替换
命令格式:
sed -i ‘s/需要换的内容/你要换的结果/’ 你的文件 必要时可以在s前加行号匹配
插入内容含特殊符号
当插入内容含有特殊符号时,插入失败,需要用符号‘\’来转义
指定行后插入多行
😅这边我还是用的\n来插入多行的,小伙伴可以借鉴,如有更好的方法欢迎留言补充😸 q(≧▽≦q)