shell grep命令

grep命令作用

grep命令用于查找文件里符合条件的字符串

grep命令的用法

grep root passwd				#过滤root关键字
grep ^root passwd				#以root开头
grep root$ passwd				#以root结尾
grep -i root passwd				#忽略大小写
grep -E=egrep					#扩展正则表达式
grep -E "\<root" passwd			#root字符之前不能有字符
grep -E "root\>" passwd			#root字符之后不能有字符
grep -数字						#显示过滤行以及上面几行和下面几行
grep -n							#显示匹配的行所在行号
grep -A							#显示过滤行以及下面几行
grep -B							#显示过滤行以及上面几行
grep -v							#反向过滤

grep字符数量匹配规则

^lyueyue						#以lyueyue开头
lyueyue$						#以lyueyue结尾
l.....e							#l开头y结尾中间5个任意字符
......e							#e结尾前面6个任意字符
*								#字符出现0-任意次
?								#0-1次
+								#1到任意次
{n}								#n次
{m,n}							#m-n次 
{0,n}							#0-n次
{,n}							#0-n次
{m,}							#最少m次
(liu){2}						#liu字符串出现2次

注意:grep -E主要是用来支持扩展正则表达式,比如 | 和 & 这些符号,用于grep多条件查询,并非是使用标准正则表达式。在扩展正则表达式中,则在BRE的基础上增加了“(”、“)”、“{”、“}”、“?”和“+”、“|”等元字符。只有在用反斜杠进行转义的情况下,字符“(”、“)”、“ { ” 、“ }”才会在扩展正则表达式中被当作元字符处理,而在基本正则表达式中,任何元字符前面加上反斜杠反而会使其被当作普通字符来处理。

命令展示:
第一组
在这里插入图片描述
在这里插入图片描述
第二组
在这里插入图片描述
第三组
在这里插入图片描述
第四组
*:表示n出现0-任意次
?:表示n出现0-1次
+:表示n出现1-任意次
在这里插入图片描述
第五组
在这里插入图片描述
第六组
-v:显示除了匹配行之外的其他行
在这里插入图片描述
在这里插入图片描述

grep命令练习

请显示系统中能被su命令切换的用户名称
实验:
(1)我们查看可以使用的shell,发现有sh、bash可以使用(bash是sh的增强版本),使用useradd -s 指定使用的shell新建用户yyy,切换用户yyy后发现实际使用的shell是sh,因此我们可以知道在/etc/shells文件中的所有shell都是可以被切换的,我们需要统计所有shell中的用户。
在这里插入图片描述
(2)tcsh、csh同样也是shell
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值