![]() Linux shell 操作命令 grep Linux shell 命令行 让你真正开始 Linux之旅,本文描述 Linux 操作命令 grep 1、简介 grep 是个很强大的命令,用来找到文件中的匹配文本,并且能够接受正则表达式和通配符,同时可以用多个 grep 命令选项来生成各种格式的输出 1.1 搜索/过滤 grep 的工作方式是这样的,它在一个或多个文件中搜索字符串模板;如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名;搜索的结果被送到标准输出,不影响原文件内容 1.2 返回值 grep 可用于 shell 脚本,因为 grep 通过返回一个状态值来说明搜索的状态
2、用法/命令格式 grep[OPTIONS]PATTERN[FILE...] grep[OPTIONS][-e PATTERN]... [-f FILE]... [FILE...] 3、常用选项
4、范例 4.1 过滤 单一文件 # grep "root" /etc/passwd --color=auto # cat /etc/passwd | grep "root" --color=auto 4.2 过滤 文件夹 # grep -R "root" /etc/* --color=auto 5、扩展 -- 正则表达式与 grep 命令 正则表达式是一种符号表示法,被用来识别文本模式;正则表达式元字符由以下字符组成:^ $ . [ ] { } - ? * + ( ) | \
5.1 匹配 空格(任意) # grep "^[ \s]\{1,\}" {file_name} 5.2 模糊匹配 ## 利用 Linux 系统自带的字典查找一个五个字母的单词,第三个字母为 j,最后一个字母为 r # grep '^..j.r$' linux.words 5.3 电话 号码 匹配 ## 固定电话格式基本都是带有 0 的区号+连接符“-”+电话号码,另外还有可能有分机号,区号有 3 位、4 位,电话号码有 7 位和 8 位的 ## 区号:前面一个 0,后面跟 2-3 位数字 :0[0-9]{2,3} ## 电话号码:7-8 位数字:[0-9]{7,8} ## 分机号:一般都是 3-4 位数字:[0-9]{3,4} ## -E 选项,grep 会识别 正则表达式的元字符 # grep -E "^0[0-9]{2,3}-[0-9]{7,8}(-[0-9]{3,4})?$" telphone.txt 作者 有话说 从本文开始 您将正式开始Linux shell 命令(本文是来自本人博客的摘要,有兴趣的可以阅读博客 -- 博客地址在个人简介文章中有说明)!感谢您的阅读,希望有所收获! ![]() 微信公众号 欢迎 扫码 关注 ![]() ![]() ---------------------------------------------------------------------------------------------------------------------- 我们尊重原创,也注重分享,文章来源于微信公众号:石头逍遥,建议关注公众号查看原文。如若侵权请联系qter@qter.org。 ---------------------------------------------------------------------------------------------------------------------- |