sed工具学习


一、sed概念简述

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

工作原理:

读取—>执行---->显示
在这里插入图片描述

sed命令格式

在这里插入图片描述
命令格式
sed -e ‘编辑指令’ 文件1 文件2

常用选项:
在这里插入图片描述

二、sed命令的操作符以及相关操作

在这里插入图片描述

打印

打印4到最后一行
sed -n ‘4,$p’ 123.txt
在这里插入图片描述
打印4到6行
sed -n ‘4,+2p’ 123.txt
在这里插入图片描述
打印第一行和第三行
sed -n -e ‘1p’ -e ‘3p’ 123.txt
在这里插入图片描述
打印偶数行
sed -n ‘n;p’ 123.txt
在这里插入图片描述

文本模式过滤行内容

在这里插入图片描述

输出带有a的行
在这里插入图片描述

基础正则表达式

输出以root开头的行
在这里插入图片描述
输出以bash结尾的行
在这里插入图片描述

文本删除操作

在这里插入图片描述
删除第三行
sed -n ‘3d;p’ 123.txt
在这里插入图片描述
删除第5到最后一行
sed -n ‘5,$d;p’ 123.txt

在这里插入图片描述
删除空格
sed ‘/^$/d’ 123.txt
在这里插入图片描述

sed替换操作

在这里插入图片描述
s 字符串替换
c 整行替换
y 字符替换,长度必须相同

p 打印并替换匹配的(第几个或第几行)
g 替换所有

替换第二个root为test
sed -n ‘s/root/test/2p’ /etc/passwd
在这里插入图片描述

以root为开头,在前面插入一个#
sed -n ‘/^root/ s/^/#/p’ /etc/passwd
在这里插入图片描述
把所有匹配到的A-Z替换成小写
sed ‘s/[A-Z]/\l&/g’ 123.txt
在这里插入图片描述
把所有匹配到的a-z替换成大写
sed ‘s/[a-z]/\u&/g’ 123.txt
在这里插入图片描述

整行替换

把aaa所在的行替换为ok
sed ‘/aaa/c ok’ 123.txt
在这里插入图片描述
单字符替换
sed ‘y/bbb/123/’ 123.txt
在这里插入图片描述

sed命令的增加
  • 操作符

a: 在行后添加内容
i: 在行前插入内容
r: 在行后读入文件

在行前行后添加内容
sed ‘/aaa/a liwei’ 123.txt
sed ‘/aaa/i qiuyang’ 123.txt

在这里插入图片描述

在行后读入文件(把456.txt读入到123.txt文件后)
sed ‘$r 456.txt’ 123.txt
在这里插入图片描述

总结

1.sed是一种流编辑器,读取文件会进行祖行读取加上指令操作,所以过大的文件一定要拆分后在交给sed处理
2.sed -r 搭配扩展正则表达式使用,使用 {n} {n,} {n,m} 不需要加""
3.用 -i 时一定要先备份(尤其对重要文件的操作),或者事先试验好确定无误是,在使用 -i
4.sed 命令的重点在于增删改查四个功能,可以运用在脚本中对重要文件配置的修改,添加等作用尤其有效

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值