shell3-sed

本文详细介绍了sed命令的各种选项和功能,包括行选择、正则表达式操作、写入文件、字符串替换、删除行等,展示了如何使用sed进行文本处理和文件编辑工作。
摘要由CSDN通过智能技术生成
sed 语法
-i  写入到文件
-n  屏蔽默认输出(全部文本)
-r  启用扩展正则(放于选项之首)
-p  打印
-s  字符串替换
-d  删除行


sed 示例
> sed -n 'p' a.txt  #输出所有行
> sed -n '4p' a.txt  #输出第4行
> sed -n '1,4p' a.txt  #1-4行
> sed -n '1p;4p' a.txt #1和4行
> sed -n '4,+10p'  #第4行后再加10行输出
> sed -n '/^bin/p' #输出以bin开头的行

> sed -r 's/[0-9]//g;s/^( )+//' n2.txt  #去掉数字,去掉开头的空格
> sed -r 's/([A-Z])/[\1]/g' n2.txt  #将所有大写字母添加括号
> cat -n rc.local | sed -n '1~2p'   #打印奇数行;'2-2p'为偶数行
> sed '9,15H;16G' /etc/passwd  #将9到15行复制到16行下
> sed -r 's/(.)(.)(.)/\l\1\l\2\l\3/g' 22   #将大写字母改成小写
> sed -r 's/(.)(.)(.)/\u\1\u\2\u\3/' 22    #将小写字母改成大写
> sed -i '112s/.*//' sudoers
> sed -i '112i isvadmin ALL=(ALL) NOPASSWD: ALL' sudoers

> sed '3,5d' /etc/passwd #删除3到5行
> sed '/xml/d'  a.txt   #删除所有包含xml的行
> sed '/xml/!d' a.txt   #删除不包含xml的行,!代表取反
> sed '/^install/d' a.txt   #删除以install开头的行
> sed '$d' a.txt        #删除文件最后一行
> sed '/^$/d' a.txt     #删除所有空行

> sed 's/xml/XML/'  a.txt    #将每行中第一个xml替换成XML
> sed 's/xml/XML/3' a.txt   #将每行中的第3个xml替换成XML
> sed 's/xml/XML/g' a.txt   #将每行中的所有xml替换成XML
> sed 's/xml//g'    a.txt   #将所有的xml都删除(替换成空串)
> sed '4,7s/^/#/'   a.txt   #将4~7行加'#'注释
> sed 's/^#an/an/'  a.txt   #解除以#an开头的行注释(去除行首的#号)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值