作者:@ssgao
本文为作者原创,转载请注明出处:https://www.cnblogs.com/ssgao/p/8881919.html
目录
linux grep命令
grep命令格式
使用正则过滤
linux grep命令
Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配行打印出来
grep 全称 Grobal Regular Expression Print 表示全局正则表达式版本,它的使用权限是所有用户。
grep命令格式
grep [options]
主要的参数
-c 只输出匹配行的计数
-i 不区分大小写
-h 查询多文件时不显示文件名
-l 查询多文件只输出包含匹配字符的文件名
-n 显示匹配行以及行号
-s 不显示不存在或无匹配文本的错误信息
-v 显示不包含匹配文本的所有行
-E 使用扩展正则表达式
常用grep实例
多个文件查询
grep "sort" *.doc
行匹配:输出匹配行的计数
grep -c "48" data.doc 输出文档中含有48字符的行数
显示匹配行和行数
grep -n "48" data.doc 显示所有匹配48的行和行号
显示非匹配的行
grep -vn "48" data.doc 输出所有不包含48的行
大小写敏感
grep -i "ab" data.doc 输出所有含有ab或Ab的字符串的行
使用正则过滤
ssgao:~ aouo$ set | grep -e .*ython
PATH=/Library/Frameworks/Python.framework/Versions/2.7/bin
* 前一个字符匹配0次或任意多次
. 匹配除了换行符以外任意一个字符。
^ 匹配行首,例如^hello会匹配以hello开头的行
$ 匹配行尾,例如hello$会匹配以hello结尾的行
[] 匹配括号中的任意一个字符,只匹配一个字符
[0-9]匹配任意一位数字,[a-z][0-9]匹配小写字母和一位数字构成的两位字符
[^] 匹配括号以外的任意字符,[^0-9]匹配任意一位非数字字符
\ 转义符,用于取消将特殊符号的含义取消
\{n\} 表示前面的字符恰好出现n次
[0-9]\{4\}匹配4位数字
\{n,\} 表示前面的字符出现不小于n次,[0-9]\{2,\}表示两位及以上的数字
\{n,m\} 表示其前面的字符至少出现n次,最多出现m次,[a-z]\{6,8\}匹配6到8位小写字母
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(三):用.NET IoT库
· 【非技术】说说2024年我都干了些啥