mac下man grep的翻译,各个选项了解了下,大家可参考

本文详细介绍了grep命令的不同模式及其使用方法,包括简单的模式匹配、扩展的正则表达式匹配及字符串匹配等。此外,还提供了grep命令的常用选项说明,帮助读者更高效地使用此命令进行文本搜索。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文件模式搜索:
	grep, egrep, fgrep, zgrep, zegrep, zfgrep

上述几个命令的区别:
	grep - 简单模式以及基本的正则
	egrep - 扩展的正则
	fgrep - 比grep和egrep都快,只进行 '字符串匹配'
	zgrep, zegrep, zfgrep 和 grep, egrep, fgrep 类似,唯一区别是:z系列grep,支持压缩文件的搜索(compress, gzip)

命令格式:
	grep [-abcdDEFGHhIiJLlmnOopqRSsUVvwxZ] [-A num] [-B num] [-C[num]] [-e pattern] [-f file] [--binary-files=value] [--color[=when]] [--colour[=when]] [--context[=num]] [--label] [--line-buffered] [--null] [pattern] [file ...]

命令选项:
	1.-A num		// 除了搜索到的行,还显示该行后面的几行
		--after-context=num
	2.-B num		// 除了搜索到的行,还显示该行前面的几行
		--before-context=num
	3.-C num		// 除了搜索到的行,还显示该行前面和后面的几行。默认值是2.
		--context=num

	4.-a 			// 将所有文件当做二进制文件。默认,如果文件包含二进制字符,grep将会输出 'Binary file ... matches'。使用这个参数,对二进制文件也进行匹配搜索
		--text
	5.-b 			// 匹配到的字符串,在当前匹配行的字节偏移,写在最前面
		--byte-offset
	6.-c 			// 输出匹配到的行个数
		--count
	7.--color[=when]	// 对匹配的内容,添加颜色,颜色采用 'GREP_COLOR' 环境变量。when-什么时候给内容添加颜色,可选的值有:never, always, auto。
		--colour[=when]
	8.-D action		// 当我们搜索的文件是设备时,例如:FIFO、Socket,使用该选项来指定处理行为。默认的action是 'read',代表,把这些设备当做普通文件来读取;设置为 'skip',则跳过这些设备文件。
		--devices=action
	9.-d action 	// 当我们搜索的文件是目录时,使用该选项来指定处理行为。默认的action是 'read',当做普通文件读取;设置为 'skip',则忽略目录的搜索;设置为 'recurse',表示递归搜索目录下的所有文件,等同于 '-R' 或 '-r' 目录。
		--directories=action
	10.-E 			// 使用 '扩展的正则',等同于 'egrep'
		--extended-regexp
	11.-e pattern	// 指定搜索时使用的模式匹配。只要匹配到指定模式的任何一个即可。当使用多个 '-e' 选项时,非常有用!(模式好像也可以直接以 '-' 开头,例如:-dongxuemin)
		--regexp=pattern

	12.--include
	13.--exclude
		包含或排除指定的文件,--exclude优先于--include,先排除,后包含。模式匹配的是指定文件的完整路径,而不是文件名部分 

	14.--include-dir
	15.--exclude-dir
		包含或排除指定的目录,--exclude-dir优先于--include-dir,先排除,后包含。如果使用了 '-R' 选项,则递归包含或排除所有的问题。

	16.-F 			// 只进行 '字符串匹配',等同于 'fgrep'
		--fixed-strings
	17.-f file 		// 从文件中,读取一个或多个换行符分割的模式。空行模式匹配到所有行。换行符不作为模式的一部分。如果文件为空,不会匹配到任何内容。
		--file=file

	18.-G 			// 使用 '基本的正则',等同于 '将grep当做传统的grep'(这点不太懂...)
		--basic-regexp
	19.-H 			// 同时输出匹配内容所在的文件名。如果指定了多个搜索文件,该行为默认
	20.-h 			// 从不输出匹配内容所在的文件名。
		--no-filename

	21.-I 			// 忽略二进制文件。该选项等同于 '--binary-file=without-match' 选项
	22.-i 			// 忽略大小写敏感。默认是 '大小写敏感'
		--ignore-case

	23.-J 			// 在搜索前,解压缩 'bzip2' 压缩的文件
		--bz2decompress

	24.-L 			// 只输出未匹配到内容的文件名。
		--files-without-match
	25.-l 			// 不输出匹配到内容的行,只输出匹配到内容的文件。一旦某个文件已搜索到一个内容,就不继续搜索该文件之后的内容,这样可以节省点效率(因为本身就是只得到文件名,已经获取到了)。如果搜索的是 '标准输入',则显示 'standard input'
		--files-with-matches

	26.--mmap 		// 使用 'mmap' 替代 'read' 来读取输入,在某些情况下,可以获得更好的性能,但是可能会产生不确定的行为。
	27.-m num 		// 设置最大匹配个数,一旦搜索到最大个数,则停止读取文件
		--max-count=num
	28.-n 			// 每个输出行之前,都展示文件中的相对行号,从第1行开始。对于处理的每个文件,都会重置行号计数器。如果指定了-c, -L, -l 或-q 选项,则忽略该选项。
		--line-number
	29.--null 		// 在输出文件名时,使用"\0"放在文件名后,这会替换原本使用的字符,如换行符或冒号。例如"grep -lZ"输出的每个文件都在同一行而不是分行,"grep -HZ"使得文件名后没有冒号
	30.-O 			// 如果指定了 '-R' 选项,只有在命令行上显示列出了 '符号链接',才会搜索他们。默认是不会搜索符号链接文件的。
	31.-o 			// 输出被匹配到的字符串,而不是输出整行。每个被匹配到的字符串都使用单独的行输出
		--only-matching
	32.-p 			// 如果指定了 '-R' 选项,将不会对符号链接进行搜索。这是默认行为。
	33.-q 			// 静默模式:不输出任何内容。一旦搜索到匹配内容,立即停止。(不太理解)
		--quiet
		--silent
	34.-R 			// 递归搜索子目录
		-r
		--recursice

	35.-S 			// 如果指定了 '-R' 选项,将搜索所有的符号链接文件。默认不搜索符号链接文件
	36.-s 			// 静默模式。不存在或不可读的文件,被忽略。(错误消息也不会说出)
		--no-message
	37.-U 			// 搜索二进制文件,但不尝试打印他们
		--binary
	38.-V 			// 显示版本信息并退出
		--version
	39.-v 			// 反转匹配结果,选择那些未匹配到的行
		--invert-match
	40.-w 			// 精确匹配整个单词。单词的组成字符包括:字母、数字和下划线。就好像模式匹配两边添加了 "[[:<:]]" 和 "[[:>:]]"
		--word-regexp
	41.-x 			// 仅选择能精确匹配整行内容的行
		--line-regexp
	42.-y 			// 等同于 '-i' 选项,旧版
	43.-Z 			// 等同于 'zgrep'
		-z
		--decompress
	44.--binary-files=value 	// 控制搜索和打印二进制文件。可选值有:binary(默认) - 搜索二进制文件,但是不打印;without-match:不搜索二进制文件;text:把二进制文件当做普通文件看待。
	45.--line-buffered 			// 强制输出为行缓冲。默认情况下,当标准输出为终端时,输出是行缓冲的,否则块将被缓冲(例如:输出到文件)。

	如果没有指定搜索文件参数,则使用标准输入!

环境变量:
	GREP_OPTIONS - 可以指定默认参数,会默认填充到命令的参数列表的最前面。不支持 '\' 反斜线转义(不同于 GNU grep)

退出状态码:
	0 - 匹配到一行或多行内容
	1 - 未匹配到内容
	2 - 发生错误

好的东西当然要分享了,有个哥们对这几个linux命令的翻译,可参考:
	http://www.cnblogs.com/f-ck-need-u/p/7048359.html#mytranslations

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值