shell grep命令

Grep用法

grep [匹配条件] [处理文件] 可以多个文件,空格隔开

Grep参数

命令行举例

复制代码
//tt.txt文件内容
php php java python golang wangteng shandong asp net php http java sdfdsfphp java sdfds PHHPHhphphhpHPHP sdagfrathuheqrughfbjavsjbvjadbjfbajvzvbzbvhaergewfb shandobg dezhou shandobg shandong dezhou hebei qingyun cangzhou beijing tianjin shandong tianjin shanxi hunan
复制代码

-i 忽略字母大小写

grep -i php tt.txt
php java python golang wangteng shandong asp net php http java
sdfdsfphp java
sdfds PHHPHhphphhpHPHP

-v 条件取反,显示不匹配的行

grep -v php tt.txt
sdagfrathuheqrughfbjavsjbvjadbjfbajvzvbzbvhaergewfb
shandobg dezhou shandobg
shandong dezhou hebei qingyun cangzhou beijing tianjin
shandong tianjin shanxi hunan

-c 统计匹配行数,不显示行内容

grep -c php tt.txt
3

-w 匹配整个词

grep -w php tt.txt
php java python golang wangteng shandong asp net php http java

-x 匹配整行

grep -x php tt.txt
php

-l 只列出匹配的文件名,不显示具体匹配行内容

grep -l php ./*
./tt.txt

-n 显示匹配结果所在的行号

grep -n php tt.txt
1
:php 2:php java python golang wangteng shandong asp net php http java 3:sdfdsfphp java 4:sdfds PHHPHhphphhpHPHP

-E 支持扩展正则表达式

grep -E 'p' tt.txt
php
php java python golang wangteng shandong asp net php http java
sdfdsfphp java
sdfds PHHPHhphphhpHPHP

-F 不支持正则表达式,按照字符串字面意思进行匹配

grep -F 'PH' tt.txt
sdfds PHHPHhphphhpHPHP

-r 递归搜索

grep -r php

 

 

 

其他案例

复制代码
//其他案例


grep -v "str" file   //在file文件中过滤掉字符串'str'所在的行

grep -E "2017:22:5[0-9]" file  //在file文件中查找时间在2017:22:50~2017:22:59所在的行
 
grep -E "^[^360]" file   //在file文件中查找不包括360的行

grep -E "w*t" file   //在file文件中查找包括w和t的行

grep -E "[5-8][6-9][0-3]"  //在file文件中查找大于560小于893的行

grep -E "9{2}" file  //在file文件中查找包含两个9的行

grep -E "9{2,}" file   //查找大于两个9的行

grep -E "^w" file  //查找文件中以w开头的行

grep -E "^[^w]" file  //查找文件中不是以w开头的行
复制代码
posted @   温柔的风  阅读(121)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示