Linux 命令---- sed

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 命令---- sed相关的知识,希望对你有一定的参考价值。

sed 命令:

 常用场景:
1. 在指定位置增加内容
2. 删除指定字符所在的行;
3. 替换指定字符串为新的字符串;
4. 只显示包含指定字符的内容

Answer:
-i: 表示将修改直接持久化到文件中
1.>sed -i ‘/test/a\one\ntwo‘ test.txt // 在存在test字符串的行后添加one 然后换行添加two
注: 不用加 g选项 就默认把符合条件的都加入 a\ 后面的内容
加入一行默认是自动换行;最后一行不用加 \n
>sed -i ‘#test_3#a\two‘ test.txt sed的添加模式,只支持/ 作为分隔符,该命令不生效。

2.>sed -i ‘/\/$/d‘ test.txt //删除test.txt中以/ 结尾的行。
>sed -i ‘/two/d‘ test.txt // 删除包含two关键字的行
注: 对于sed的删除模式,只支持/ 作为分隔符,不支持# 等字符作为分隔符;

3.>sed -i ‘s#test1#test2#g‘ test.txt // 将test.txt 中每一行的test1替换为test2, g表示一行中有多个test1,全部替换为test2
> sed -i ‘s/test1/test2/g‘ test.txt //以/ 作为分隔符,将test1 替换为 test2

4.> sed -n ‘/test2/p‘ test.txt //只打印包含test2 的行

以上是关于Linux 命令---- sed的主要内容,如果未能解决你的问题,请参考以下文章

Linux命令简单操作之sed

Linux常用命令之sed

linux正则表达式--sed

linux命令(44):去掉 所有文件中的空行

Linux Sed命令具体解释+怎样替换换行符" "(非常多面试问道)

linux正则