shell 脚本 sed 命令总结

删除以a开头的行

1、sed -i '/^a.*/d' temp.txt

-i 表示操作在源文件上生效.否则操作内存中数据,并不写入文件中.

在分号内的/d表示删除匹配的行

2、 删除文件第三行。
sed -i '3d' file.txt  
3、 删除文件中包含"NewBalance"的那行。
sed -i '/NewBalance/d' file.txt

替换匹配行:

sed -i '^a.*/haha/g' temp.txt

分号内的s/表示替换

/g表示全局替换

^ 表示以a开头的行匹配,行前面有空格则不匹配
去掉^号,表示整行匹配

[abc]匹配中括号中的单个字符,如a或b或c
[^abc]匹配除了a、b、c等字符的其他单个字符
[a-z]匹配一个字符范围,如a到z
[a-zA-Z]匹配一个字符范围,如a-z 或 A-Z
^匹配行的开始
$匹配行的结束
\A匹配一个字符串的开始
\z匹配一个字符串的结束
.匹配任意单个字符
\s匹配空白字符,如空格,TAB
\S匹配非空白字符
\d匹配一个数字
\D匹配非数字
\w匹配一个字母
\W匹配非字母
\b匹配字符边界
(...)引用所有括号中的内容
(a|b)a或者b
a?零个或1个a
a*零个或多个a
a+1个或多个a
a{3}3次重复的a
a{3,}3次或3次以上重复的a
a{3,6}3到6次重复的a
修正符
/g查找所有可能的匹配
/i不区分大小写
/m多行匹配
/s单行匹配
/x忽略空白模式
/e可执行模式,PHP专有
/A强制从目标字符串开头匹配
/D使用$限制结尾字符,则不允许结尾有换行
/U只匹配最近的一个字符串;不重复匹配




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值