正则表达式练习

sed练习题
(1)把/etc/passwd复制到/root/12.txt,用sed打印所有行
(截取了一部分)

在这里插入图片描述

(2)打印12.txt的第2行~第7行

在这里插入图片描述

(3)打印12.txt中包含root的行

在这里插入图片描述

(4)删掉12.txt的第11行以及后面的所有行

在这里插入图片描述

(5)删掉12.txt中包含bash的行
(截取了一部分)

在这里插入图片描述

(6)将12.txt中的root替换成toor
这里s应该写在单引号里面(截取了一部分)

在这里插入图片描述

(7)将12.txt中的/sbin/nologin替换为/bin/login
(截取了一部分)

在这里插入图片描述

(8)删除12.txt中第3行~第6行中所有数字

在这里插入图片描述

(9)删除12.txt中所有的特殊字符(除了数字以及大小写字母)
(截取了一部分)

在这里插入图片描述

(10)在12.txt中第2行~第5行最前面加aaa

在这里插入图片描述

awk练习题
(1)用awk打印整个12.txt
(截取了一部分)

在这里插入图片描述

(2)查找所有包含bash的行

在这里插入图片描述

(3)用 : 作为分隔符,查找第3个字段等于0的行

在这里插入图片描述

(4)用 : 作为分隔符,查找第1个字段为root的行,并把该段的root换成toor(可以连同sed一起用)

在这里插入图片描述

(5)用 : 作为分隔符,打印最后一个字段
(截取了一部分)

在这里插入图片描述

(6)打印行数大于20的所有行

在这里插入图片描述

(7)用 : 作为分隔符,打印所有第3个字段小于第4个字段的行

在这里插入图片描述

(8)用 : 作为分隔符,打印第1个字段以及最后一个字段,并且中间用@连接
例如root@/bin/bash(截取了一部分)

在这里插入图片描述

(9)用 : 作为分隔符,把整个文档的第4个字段相加,求和

在这里插入图片描述

综合练习
(1)如何把文档用户uid大于500的行打印出来?

在这里插入图片描述

(2)用grep把文档中包含abc或123的行过滤出来,并在过滤出来的行前面加上行号

在这里插入图片描述

(3)命令 grep -v '^$' /tmp/10/1.txt 会过滤出哪些行?

会过滤掉空行

在这里插入图片描述

(4)sed有一个选项可以直接更改文本文件,是哪个选项?

-i 选项

(5)如何删除一个文档中的所有数字或者字母?

# sed ‘s/[0-9]//g’ test.txt //删除数字

# sed ‘s/[a-zA-Z]//g’ test.txt //删除字母

(6)请比较这两个命令的异同:grep -v '^[0-9]' /tmp/10/1.txt 和 grep '^[^0-9]' /tmp/10/1.txt

在这里插入图片描述

(7)使用grep过滤某个关键词时,如何把包含关键词的行连同上面一行打印出来?连同下面一行也打印?同时打印上下各一行?

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值