day17-Linux三剑客-sed

linux三剑客

  1. awk
  2. sed
  3. grep
sed:流编辑器(stream editor)

主要功能:增删改查
#sed格式:sed [选项] [sed内置命令字符] 文件

选项含义
- n取消默认输出
- i修改内容而不是输出到终端
-r支持扩展正则
sed内置命令字符
字符解释说明
a#全拼append,表示追加文本>>,在指定行后添加一行或多行文本※
d#全拼delete,表示删除匹配行
i#全拼insert,表示插入文本,在指定行前添加一行或多行文本※
p#全拼print,表示打印匹配行的内容,通常p会与选项-n一起使用※

创建环境

[root@libielang /oldboy]# cat -n lidao.txt
     1	101,oldboy,CEO
     2	102,zhangyao,CTO
     3	103,Alex,COO
     4	104,yy,CFO
     5	102,zhangyao,CTO
     6	103,Alex,COO

查找指定的一行

[root@libielang /oldboy]# sed -n '3p' lidao.txt
103,Alex,COO

3p,指定查找第三行

查找连续多行

[root@libielang /oldboy]# sed -n '1,3p' lidao.txt
101,oldboy,CEO
102,zhangyao,CTO
103,Alex,COO

'1,3p’查询第1行到第3行

查询不连续的行

[root@libielang /oldboy]# sed -n '1p;4p' lidao.txt
101,oldboy,CEO
104,yy,CFO

查询第1行和第4行

a:在指定行下面一行添加

[root@libielang /oldboy]# sed '2aI love xxx' lidao.txt 
101,oldboy,CEO
102,zhangyao,CTO
I love xxx          ##添加写入的行
103,Alex,COO
104,yy,CFO
102,zhangyao,CTO
103,Alex,COO

在第二行下面一行添加一行

i:在指定行上面写入一行

[root@libielang /oldboy]# sed '2iI love xxx' lidao.txt 
101,oldboy,CEO
I love xxx         	##写入的位置
102,zhangyao,CTO
103,Alex,COO
104,yy,CFO
102,zhangyao,CTO
103,Alex,COO

在第二行上面一行写入

**c:把指定行内容清空在写入

[root@libielang /oldboy]# sed '4cI love xxx' lidao.txt 
101,oldboy,CEO
102,zhangyao,CTO
103,Alex,COO
I love xxx
102,zhangyao,CTO
103,Alex,COO

把第四行内容清空再写入

**d:删除(delete)

[root@libielang /oldboy]# sed '3d' lidao.txt 
101,oldboy,CEO
102,zhangyao,CTO
104,yy,CFO
102,zhangyao,CTO
103,Alex,COO

删除第三行

s:替换

[root@libielang /oldboy]# sed 's#zhangyao#lidao#g' lidao.txt
101,oldboy,CEO
102,lidao,CTO
103,Alex,COO
104,yy,CFO
102,lidao,CTO
103,Alex,COO

将文件里的zhangyao替换为lidao
格式:s#xxx#yyy#g
s:替换 。g:全局替换
xxx要替换的内容,yyy替换为什么。#分隔符


命令参数补充

命令grep

参数功能说明
-A#显示出grep找出的内容及下面的指定行数
-B#显示出grep找出的内容及上面的指定行数
-C#显示出grep找出的内容及上下指定的行号(-C== -A -B)
-c#统计包含内容的行数
-R#递归进行过滤
-l#只显示包含过滤内容的文件名,不显示文件内容
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值