sed与正则表达式
grep 是文本内容过滤和筛选
sed 对文件或数据流进行加工处理,sed会把符合规则和不符合规则都打印出来
参数:
-n 代表取消默认输出
-i 代表直接将修改的结果写入文件,不加-i,把结果写入内存
-e 多次编辑
-r 支持扩展
内置命令符
a 追加
d 删除匹配行
i 插入文本
p 打印匹配行
s/正则/替换内容/g 匹配正则内容,替换内容,结尾g代表全局匹配
题1:输出第2、3行的数据 sed '3,4p' b.txt -n
题2:sed可以实现grep的过滤效果,但要把过滤内容放在//中,p是打印 sed "/xiaofang/p" b.txt -n
题3:删除xiaofang,在内存中,未写入文件 sed "/xiaofang/d" b.txt
删除xiaofang,加-i写入文件中 sed "/xiaofang/d" b.txt -i
替换服务器配置文件 sed "s/application:/#application:/g" b.yml -i
题4:多次编辑 -e sed -e "/xiaofang/d" -e "/hello/lisi" b.txt
题5:在第2行后面加一句话 sed '2a 我不想干活' b.txt
题6:在第二行前面加一句话 sed '2i 你不想干活' b.txt
题7:在某行前面加多行数据 \n sed '2i 你不想干活\n谁想干活' b.txt
题8:查出ifconfig下面的ip地址
题9:求出内容lisi123在b.txt的行数 sed -n -e '/lisi123/=' b.txt
上班求生存,下班求发展