侧边栏壁纸
博主头像
小周的知识站 博主等级

行动起来,活在当下

  • 累计撰写 89 篇文章
  • 累计创建 13 个标签
  • 累计收到 9 条评论

目 录CONTENT

文章目录

未命名文章

Administrator
2026-03-01 / 0 评论 / 0 点赞 / 2 阅读 / 0 字

Shell四剑客

1 grep文件内容过滤

  • grep用于查找文件中符合条件的字符串,它能利用正则表达式搜索文件中的字符串,并把匹配到 的字符串的行打印出来

  • 命令格式:grep [-选项] "查找条件" 目标文件

  • 常用选项:

    • #以行号形式输出

    • -i #忽略字符串大小写

    • -v #显示不包含匹配的行(排除)

  • 常用正则表达式符号

    • ^字符串 #匹配以什么什么开头的行

    • 字符串$ #匹配以什么什么结尾的行

    • ^$ #显示空行

  • grep命令示例

#过滤包含root关键字的行
[root@localhost ~]# grep root /etc/passwd
 root:x:0:0:root:/root:/bin/bash
 operator:x:11:0:operator:/root:/sbin/nologin
 #以行号形式过滤包含root关键字的行
[root@localhost ~]# grep -n root /etc/passwd
 1:root:x:0:0:root:/root:/bin/bash
 10:operator:x:11:0:operator:/root:/sbin/nologin
 [root@localhost ~]# grep -n bash /etc/passwd
 [root@localhost ~]# grep -n : /etc/passwd
 #忽略大小写过滤
[root@localhost ~]# grep -i -n ssh /etc/passwd
 38:sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
 #排除包含#号的行
[root@localhost ~]# grep -n -v '^#' /etc/fstab
 #过滤以root开头的行
[root@localhost ~]# grep ^root /etc/passwd
 #过滤以root结尾的行
[root@localhost ~]# grep -n 'root$' /etc/passwd
 [root@localhost ~]# grep -n 'bash$' /etc/passwd
 #语法错误示范
[root@localhost ~]# grep -n -v '^#' ^$  /etc/fstab
 grep: ^$: 没有那个文件或目录
/etc/fstab:1:
 /etc/fstab:9:/dev/mapper/centos-root /                       
defaults        
0 0
 /etc/fstab:11:/dev/mapper/centos-swap swap    
defaults        
0 0
 11:/dev/mapper/centos-swap swap                    
0 0
 /etc/fstab:10:UUID=ae55ec6b-973b-498e-a366-f35e14b3d153 /boot                   
xfs     
#语法错误示范
[root@localhost ~]# grep -n -v '^#' /etc/fstab | grep -v ^$
 1:
 9:/dev/mapper/centos-root /                       
10:UUID=ae55ec6b-973b-498e-a366-f35e14b3d153 /boot                   
#正确语法
[root@localhost ~]# grep  -v '^#' /etc/fstab | grep -v ^$ -n
 xfs     
xfs     
swap    
defaults        
defaults        
defaults   
0 0
 xfs     
0 0
2:/dev/mapper/centos-root /                       
3:UUID=ae55ec6b-973b-498e-a366-f35e14b3d153 /boot                   
defaults        
0 0
 4:/dev/mapper/centos-swap swap                    
xfs     
swap    
defaults        
defaults        
#显示该文件内有效配置的行
[root@localhost ~]# grep -v '^#' /etc/login.defs | grep -v ^$ -n | wc -l

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区