Linux 命令---- sed
2016-03-26 23:05
513 查看
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的添加模式,只支持/ 作为分隔符,该命令不生效。
>sed -i '/test/i\one' test.txt //在存在test字符串的行前添加one
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 的行
常用场景:
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的添加模式,只支持/ 作为分隔符,该命令不生效。
>sed -i '/test/i\one' test.txt //在存在test字符串的行前添加one
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 命令---- tar
- Linux 命令----find
- linux内核分析 第五周 扒开系统调用的三层皮(下)
- linux输入输出重定向
- Centos7 yum、rpm命令大全
- Linux常用命令大全
- linux设备驱动归纳总结(六):1.中断的实现
- linux内存管理-虚拟内存总结
- Linux文件系统
- Linux中文乱码问题终极解决方法
- CentOS开机启动流程简介
- Linux基础--进程管理和作业控制
- Linux-iptables详解
- Linux内核分析:实验五
- centos7.1与无线网 (芯片rtl8723be)
- 【转】Configuring VM Acceleration on Linux
- Linux 正则表达
- Linux 正则表达
- Linux之grub引导详情与故障排除
- linux下使用ccat让你的cat高亮显示