grep的常用和次常用选项
选项 | 选项2 | 英文 | 翻译 |
---|---|---|---|
-P | –perl-regexp | PATTERN is a Perl regular expression | 使用Perl正则表达式语法 |
-i | –ignore-case | ignore case distinctions | 忽略大小写 |
-v | –invert-match | select non-matching lines | 选择未匹配的那些行 |
-L | –files-without-match | print only names of FILEs containing no match | 输出未匹配的文件名 |
-l | –files-with-matches | print only names of FILEs containing matches | 输出匹配的文件名 |
-c | –count | print only a count of matching lines per FILE | 每个文件输出一个匹配的行数 |
-n | –line-number | print line number with output lines | 输出匹配的数据的同时打印行号 |
-H | –with-filename | print the file name for each match | 对于每一处匹配,都打印文件名 |
-h | –no-filename | suppress the file name prefix on output | 在输出时,不输出文件名前缀(详见下方解释) |
-o | –only-matching | show only the part of a line matching PATTERN | 不打印整行,只显示匹配到的那一部分文字 |
-r | –recursive | like –directories=recurse | 递归。如果没有指定目录,则取当前目录,否则使用指定目录 |
-B | –before-context=NUM | print NUM lines of leading context | 显示匹配到的行的同时,显示其前面的#行 |
-A | –after-context=NUM | print NUM lines of trailing context | 显示匹配到的行的同时,并显示后续的#行 |
-C | –context=NUM | print NUM lines of output context | 显示匹配到的行的同时,并显示其前面的#行和后面的#行 |
无 | –exclude-dir=DIR | Exclude directories matching the pattern DIR from recursive searches. | 递归搜索中排除匹配到的目录 |
无 | –exclude=GLOB |
Skip files whose base name matches GLOB (using wildcard matching). |
如果通配符匹配到了某个文件名,那么跳过这个文件名 |
无 | –include=GLOB |
Search only files whose base name matches GLOB (using wildcard matching as described under –exclude). |
只搜索那些符合通配符的文件 |
grep的部分帮助信息
[root@localhost ~]# grep --help
Usage: grep [OPTION]... PATTERN [FILE]...
Search for PATTERN in each FILE or standard input.
PATTERN is, by default, a basic regular expression (BRE).
Example: grep -i 'hello world' menu.h main.c...(略)...'egrep' means 'grep -E'. 'fgrep' means 'grep -F'.
Direct invocation as either 'egrep' or 'fgrep' is deprecated.
When FILE is -, read standard input. With no FILE, read . if a command-line
-r is given, - otherwise. If fewer than two FILEs are given, assume -h.
Exit status is 0 if any line is selected, 1 otherwise;
if any error occurs and -q is not given, the exit status is 2.
当文件是"-"时,读取标准输入。
如果没有没有给出文件的话,如果命令行给出了"-r"就读取"."(当前目录),否则读取"-"(标准输入)。
如果向grep传递了少于两个文件,就假定有"-h"选项(例:送给grep三个文件,结果匹配到一个文件,那么grep需要输出文件名,让你知道匹配到的是哪一个文件;如果送给grep一个文件的话,那么grep再显示文件名就显得有些多余了)。
Report bugs to: bug-grep@gnu.org
GNU Grep home page: <http://www.gnu.org/software/grep/>
General help using GNU software: <http://www.gnu.org/gethelp/>
[root@localhost ~]#
示例
Usage: grep [OPTION]... PATTERN [FILE]...
Example: grep -i 'hello world' menu.h main.c
递归查找某目录下的( 包含某字符串[字符串忽略大小写]的)所有文件,只输出文件名
grep -rli "字符串" --include="*.cpp" --include="*.h" "目录"
递归查找某目录下的(不包含某字符串[字符串忽略大小写]的)所有文件,只输出文件名
grep -rliv "字符串" --include="*.cpp" --include="*.h" "目录"
递归查找当前目录下所有包含某字符串的文件,输出文件名、行号、该行内容
grep -r -Hn "字符串" #(或)# grep -r -Hn "字符串" ./
递归查找当前目录下所有包含某单词(CharacterString大小写敏感)的文件,输出文件名、行号、该行内容
grep -r -Hn -P '\bCharacterString\b' # 搜索"正则表达式 元字符 metacharacter"查看详情
递归查找当前目录下所有包含某单词(Character的大小写不敏感)的文件,输出文件名、行号、该行内容
grep -r -Hn -P '\b(?i)Character(?-i)String\b' # 搜索"正则表达式 模式修改符"查看详情
完。
grep的常用和次常用选项相关推荐
- 常用的SQLAlchemy列选项
常用的SQLAlchemy列选项 https://blog.csdn.net/weixin_41896508/article/details/80772238 选项名 说明 primary_key 如 ...
- ESP 常用的低功耗配置选项解析
此篇博客介绍 ESP 常用的低功耗配置选项. 1.常用功耗优化配置选项 1.1.动态调频 CPU 工作的频率越高,功耗消耗也越大.通过 DFS(dynamic frequency scaling,动态 ...
- 73.JVM内存基础结构,参数分类,推荐的配置项,参数混用问题,常用工具,常用命令
73.JVM内存基础结构,参数分类,推荐的配置项,参数混用问题,常用工具,常用命令 73.1.堆内存基本结构 73.2.参数分类 73.3.推荐的配置项 73.4.参数混用问题 73.5.常用命令 7 ...
- linux 入门 及一些常用命令及常用软件安装
Linux入门: ------------------------------------------------------------------------- 1.Linux的安装方式: ...
- cmake 常用变量和常用环境变量查表手册
cmake 常用变量和常用环境变量查表手册 一,cmake 变量引用的方式: 前面我们已经提到了,使用${}进行变量的引用.在 IF 等语句中,是直接使用变量名而不通过${}取值 二,cmake 自定 ...
- 常用快捷键cmd常用dos命令java安装
Day2 常用快捷键|cmd|常用dos命令|java安装 常用快捷键 鼠标左键点住窗口,晃动两下,隐藏其他窗口,再晃两下,回原 贴靠窗口:Win + 左/右 > Win + 上/下 > ...
- matlab常用函数与常用指令大全
matlab常用函数与常用指令大全 matlab常用函数- - 1.特殊变量与常数 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 i ...
- Manjaro KDE 21.2.5安装后配置、yay常用命令、常用软件安装及主题美化(2022.04.18)
Manjaro KDE 21.2.5安装后配置.yay常用命令.常用软件安装及主题美化(2022.01.23) 结果展示 基本配置 关于 manjaro 的安装这里不再赘述了,安装的时候选择闭源驱动无 ...
- iOS常用快捷键/终端常用指令
一 iOS常用快捷键 iOS常用快捷键 新建项目 com + shift +N 新建文件 com + N 偏好设置 通用 com + , 跳到指定行 com + L 当前行加断点 com + \ 向前 ...
- dw常用标签_Dreamweaver常用工具栏介绍
本文介绍了Dreamweaver的常用工具栏:插入栏.文档栏和状态栏的组成及作用. "插入"栏 "插入"栏包含用于创建和插入对象(如表格.层和图像)的按钮.当鼠 ...
最新文章
- vue 添加完数据后刷新页面_页面刷新vuex数据消失
- 移除 RSA-4096 Ransomware
- [register]-ARM64重要寄存器介绍
- linux c mysql 封装_本人对MYSQL C API做的一个封装,希望对linux C++程序员有点帮助,同时欢迎拍砖!...
- 使用公式给参数赋默认初始值
- 动态反射——Load,LoadFrom和LoadFile
- docker centos ssh
- 抓住那头牛(信息学奥赛一本通-T1253)
- C# 调用其他的动态库开发应注意的问题
- Python+tkinter不允许退出程序的思路和实现
- leetcode python3 简单题189. Rotate Array
- 推荐一个视频 Postive Psychology
- 【读史笔记】《晋书·卫玠列传》
- 走进社交网络 二期功能完成
- 香港风景线 Byond 1993年采访
- 在一所普通211高校读本科在TOP2高校读研究生的感触
- Flutter从0到1自定义日历
- 蓝桥杯练习系统答案-数的读法-Python
- 开发Android第一步,安装SDK 1.6, 模拟器及安装游戏
- mysql_install_db is deprecated. Please consider switching to mysqld --initialize