shell编程——sed用法之参数详解

sed格式:

sed 参数 '正则表达式' 文件名

sed的常见参数有以下几种:

1、-n, --quiet, --silent
取消自动打印模式

不加n默认打印整个文件:
[root@localhost ~]# sed '' test.sh
#!/bin/bash
第一行 12345!
第二行 23456@
第三行 34567#
第四行 45678$
第五行 56789%

加-n取消打印:
[root@localhost ~]# sed -n '' test.sh 
2、-e 脚本, --expression=脚本
添加“脚本”到程序的运行列表,即可以使用多个正则表达式进行匹配

下面列子使用了两个匹配条件,'/23456@/p'把匹配的行找出来,'/23456@/='把该行的行号取出,然后一起打印出来:
[root@localhost ~]# sed -n -e '/23456@/p' -e '/23456@/=' test.sh 
第二行 23456@
3
3-f 脚本文件, --file=脚本文件
添加“脚本文件”到程序的运行列表
4、-i[SUFFIX], --in-place[=SUFFIX]
对文件进行修改

把文件里的“第二行 23456@”替换成“65432”
[root@localhost ~]# more test.sh 
#!/bin/bash
第一行 12345!
第二行 23456@
第三行 34567#
第四行 45678$
第五行 56789%
[root@localhost ~]# sed -i 's/第二行 23456@/65432/g' test.sh 
[root@localhost ~]# more test.sh 
#!/bin/bash
第一行 1234565432
第三行 34567#
第四行 45678$
第五行 56789%
5、-c, --copy
6、-l N, --line-length=N
指定“l”命令的换行期望长度
7、--posix
关闭所有 GNU 扩展
8-r, --regexp-extended
在脚本中使用扩展正则表达式
9-s, --separate
将输入文件视为各个独立的文件而不是一个长的连续输入
10、-u, --unbuffered
从输入文件读取最少的数据,更频繁的刷新输出
11、--help
打印帮助并退出
12、--version
输出版本信息并退出
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值