sed命令解析

sed文本处理工具的用法:

① 前置命令 | sed [选项] '条件指令'

② sed [选项] '条件指令' 文件

相关说明:

  • 条件可以是行号或者/正则/
  • 没有条件时,默认为所有条件
  • 指令可以是增、删、改、查等指令
  • 默认sed会将所有输出的内容都打印出来,可以使用-n屏蔽默认输出
  • 选项中可以使用-r选项,让sed支持扩展正则

认识sed工具的基本选项:

  • -n (屏蔽默认输出,默认sed会输出读取文档的全部内容)
  • -r (让sed支持扩展正则)
  • -i (sed直接修改源文件,默认sed只是通过内存临时修改文件,源文件无影响)

1) sed 命令的-n选项

执行p打印等过滤操作时,希望看到的是符合条件的文本。但不使用任何选项时,默认会将原始文本一并输出,从而干扰过滤效果。比如,尝试用sed输出/etc/hosts的第一行:

可以发现所有的行都被显示出来了(第一行重复2次)。——正确的用法应应该添加-n选项,这样就可以只显示第一行了:

行号可以是连续的行号,如打印passwd第3行道第6行账户信息:

2) sed命令的-i选项

正常情况下,sed命令所做的处理知识把操作结果(包括打印、删除等)输出到当前终端屏幕,而并不会对原始文件做任何更改:

若希望直接修改文件内容,应添加选项-i。

比如,直接删除test.txt(自行创建一个任意内容的文件)的第1~4行:

3)多个指令可以使用分号隔离

用分号来隔离多个操作,比如:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值