这是可以使用我们的多个免费在线工作站之一(例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器)在 OnWorks 免费托管服务提供商中运行的命令 egrep
程序:
您的姓名
grep、egrep、fgrep、rgrep - 打印匹配模式的行
概要
grep的 [配置] 模式 [文件...]
grep的 [配置[-e 模式]……[-f 文件]……[文件...]
商品描述
grep的 搜索命名输入 文件s 表示包含与给定匹配项的行 模式。 如果
没有指定文件,或者如果文件“-“ 给出, grep的 搜索标准输入。 经过
默认, grep的 打印匹配的行。
此外,变种程序 埃格雷普, fgrep 和 格瑞普 是一样的 grep的 -E, grep的 -F,
和 grep的 -r, 分别。 这些变体已被弃用,但为向后提供
兼容性。
配置
通用 曲目 资讯
- 帮帮我 输出使用信息并退出。
-V, - 版
输出版本号 grep的 并退出。
匹配器 选择
-E, --扩展正则表达式
阐释 模式 作为扩展的正则表达式(ERE,见下文)。
-F, --固定字符串
阐释 模式 作为固定字符串列表(而不是正则表达式),
由换行符分隔,其中任何一个都将被匹配。
-G, --基本正则表达式
阐释 模式 作为基本的正则表达式(BRE,见下文)。 这是
默认。
-P, --perl-正则表达式
阐释 模式 作为 Perl 正则表达式(PCRE,见下文)。 这是高度
实验性的 grep的 -P 可能会警告未实现的功能。
匹配 系统
-e 模式, --正则表达式=模式
使用 VHDL 语言编写 模式 作为图案。 多种的 -e 可用于指定不同的搜索
模式。 此选项也可用于保护以连字符开头的模式
(-).
-f 文件, --文件=文件
从 文件,每行一个。 空文件包含零个模式,
因此不匹配。 多种的 -f 可用于指定不同的文件。
-i, --忽略大小写
忽略两者中的大小写区别 模式 和输入文件。
-v, --反转匹配
反转匹配感,选择不匹配的行。
-w, --word-正则表达式
仅选择包含构成整个单词的匹配项的那些行。 测试是
匹配的子字符串必须位于行首,或前面
一个非单词组成字符。 同样,它必须要么在
行或后跟一个非单词组成字符。 词组成的字符
是字母、数字和下划线。
-x, --line-正则表达式
仅选择与整行完全匹配的那些匹配项。 对于一个普通
表达式模式,这就像将模式括起来然后包围它
- ^ 和 $.
-y 过时的同义词 -i.
一般用途总体评估 输出 系统
-c, - 数数
抑制正常输出; 而是打印每个输入的匹配行数
文件。 随着 -v, --反转匹配 选项(见下文),计算不匹配的行。
- 颜色[=WHEN], - 颜色[=WHEN]
包围匹配的(非空)字符串、匹配行、上下文行、文件
名称、行号、字节偏移量和分隔符(用于上下文的字段和组
行)与转义序列以在终端上以彩色显示它们。 颜色
由环境变量定义 GREP_颜色. 废弃的环境
变量 GREP_COLOR 颜色 仍然支持,但它的设置没有优先级。
WHEN is 决不要, 时刻或 汽车.
-L, --文件不匹配
抑制正常输出; 而是打印每个输入文件的名称,其中没有
输出通常会被打印出来。 扫描将在第一次停止
匹配。
-l, --带匹配的文件
抑制正常输出; 而是打印输出的每个输入文件的名称
通常会被打印出来。 扫描将在第一场比赛时停止。
-m 民, --最大计数=民
停止读取文件后 民 匹配线。 如果输入是标准输入
常规文件,以及 民 匹配行输出, grep的 确保标准
输入被定位到退出前的最后一个匹配行之后,不管
尾随上下文行的存在。 这使调用进程能够
继续搜索。 什么时候 grep的 停止后 民 匹配行,它输出任何尾随
上下文行。 当。。。的时候 -c or - 数数 也使用选项, grep的 不输出一个
计数大于 民。 当 -v or --反转匹配 也使用选项, grep的
输出后停止 民 不匹配的行。
-o, --仅匹配
只打印匹配行的匹配(非空)部分,每个这样的部分都在
单独的输出线。
-q, - 安静的, - 沉默的
安静的; 不要向标准输出写入任何内容。 立即退出,状态为零
如果找到任何匹配项,即使检测到错误。 另见 -s or
--无消息 选项。
-s, --无消息
禁止有关不存在或不可读文件的错误消息。
输出 Line 字首 系统
-b, --字节偏移量
在每行输出之前打印输入文件中从 0 开始的字节偏移量。 如果
-o (--仅匹配) 被指定,打印匹配部分本身的偏移量。
-H, --with-文件名
打印每个匹配项的文件名。 当有多个时,这是默认值
要搜索的一个文件。
-h, --无文件名
禁止输出文件名的前缀。 这是默认的,当有
只搜索一个文件(或仅标准输入)。
--标签=品牌
将实际来自标准输入的输入显示为来自文件的输入 品牌.
这在实现诸如 兹格列普,例如, GZIP -光盘 foo.gz
| grep的 --标签=foo -H 东西。 另请参阅 -H 选项。
-n, - 电话号码
在其输入文件中使用从 1 开始的行号为每一行输出添加前缀。
-T, --初始选项卡
确保实际行内容的第一个字符位于制表位上,因此
选项卡的对齐方式看起来很正常。 这对于带有前缀的选项很有用
他们输出到实际内容: -H,-n及 -b. 为了提高
来自单个文件的行都从同一列开始的概率,这
还会导致以最小方式打印行号和字节偏移量(如果存在)
大小字段宽度。
-u, --unix 字节偏移量
报告 Unix 风格的字节偏移量。 这个开关导致 grep的 将字节偏移报告为
如果该文件是 Unix 样式的文本文件,即删除了 CR 字符。
这将产生与运行相同的结果 grep的 在 Unix 机器上。 这个选项
没有效果,除非 -b 也使用选项; 它对其他平台没有影响
比 MS-DOS 和 MS-Windows。
-Z, - 空值
输出一个零字节(ASCII NUL 字符)而不是通常的字符
跟随一个文件名。 例如, grep的 -lZ 每个文件后输出一个零字节
name 而不是通常的换行符。 此选项使输出明确,即使
存在包含不寻常字符(如换行符)的文件名。 这个
选项可以与命令一起使用,例如 发现 -打印0, perl的 -0, 分类 -z及 参数 -0
处理任意文件名,即使是那些包含换行符的文件名。
语境 Line 系统
-A 民, --在上下文之后=民
打印 民 匹配行后的尾随上下文行。 放置一行包含
组分隔符 (--) 在连续的匹配组之间。 随着 -o or
--仅匹配 选项,这不起作用并给出警告。
-B 民, --之前上下文=民
打印 民 匹配行之前的前导上下文行。 放置一行包含
组分隔符 (--) 在连续的匹配组之间。 随着 -o or
--仅匹配 选项,这不起作用并给出警告。
-C 民, -民, --上下文=民
打印 民 输出上下文的行。 放置一行包含组分隔符 (--)
在连续的匹配组之间。 随着 -o or --仅匹配 选项,这个
没有效果并给出警告。
文件 和 目录 选择
-a, - 文本
像处理文本一样处理二进制文件; 这相当于
--二进制文件=文本 选项。
--二进制文件=型
如果文件的前几个字节表示该文件包含二进制数据,
假设文件是类型 型。 默认, 型 is 二进制及 grep的
通常输出一条单行消息,说明二进制文件匹配,或者不
如果没有匹配的消息。 如果 型 is 不匹配, grep的 假设一个二进制
文件不匹配; 这相当于 -I 选项。 如果 型 is 文本, grep的
像处理文本一样处理二进制文件; 这相当于 -a 选项。
处理二进制数据时, grep的 可以将非文本字节视为行终止符; 为了
例如,模式 '.'(句点)可能不匹配空字节,因为空字节
可能被视为行终止符。 警告: grep的 --二进制文件=文本 可能
输出二进制垃圾,如果输出是一个
终端,如果终端驱动程序将其中的一些解释为命令。
-D 活动正式启动, --设备=活动正式启动
如果输入文件是设备、FIFO 或套接字,请使用 活动正式启动 来处理它。 经过
默认, 活动正式启动 is 读, 这意味着读取设备就像读取它们一样
普通文件。 如果 活动正式启动 is 跳过, 设备被悄悄跳过。
-d 活动正式启动, --目录=活动正式启动
如果输入文件是目录,请使用 活动正式启动 来处理它。 默认情况下, 活动正式启动 is
读,即,就像读取普通文件一样读取目录。 如果 活动正式启动 is
跳过, 默默地跳过目录。 如果 活动正式启动 is 递归, 读取每个文件下的所有文件
目录,递归地,仅当符号链接在命令上时才遵循符号链接
线。 这相当于 -r 选项。
--排除=格劳博
跳过基本名称匹配的文件 格劳博 (使用通配符匹配)。 一个文件名
glob 可以使用 *, ?及 [...] 作为通配符,和 \ 引用通配符或反斜杠
字面上的字符。
--排除-从=文件
跳过基本名称与从中读取的任何文件名全局匹配的文件 文件 (使用
通配符匹配如下所述 - 排除).
--排除目录=DIR
排除匹配模式的目录 DIR 从递归搜索。
-I 处理一个二进制文件,就好像它不包含匹配的数据一样; 这相当于
此 --binary-files=没有匹配 选项。
--包括=格劳博
仅搜索基本名称匹配的文件 格劳博 (使用通配符匹配作为
在下描述 - 排除).
-r, -递归
递归地读取每个目录下的所有文件,仅在以下情况下才遵循符号链接
他们在命令行上。 注意,如果没有给出文件操作数,grep 会搜索
工作目录。 这相当于 -d 递归 选项。
-R, --取消引用递归
递归读取每个目录下的所有文件。 按照所有符号链接,
不像 -r.
其他 附加选项
--行缓冲
在输出上使用行缓冲。 这可能会导致性能损失。
-U, --二进制
将文件视为二进制文件。 默认情况下,在 MS-DOS 和 MS-Windows 下, grep的 猜测
通过查看从文件中读取的前 32KB 的内容来确定文件类型。 如果
grep的 确定文件是文本文件,它从原始文件中去除 CR 字符
文件内容(使用正则表达式 ^ 和 $ 正常工作)。
指定 -U 否决这种猜测,导致所有文件被读取并传递给
逐字匹配机制; 如果文件是带有 CR/LF 对的文本文件
每行结束,这将导致一些正则表达式失败。 这个选项
对 MS-DOS 和 MS-Windows 以外的平台没有影响。
-z, --null-数据
将输入视为一组行,每行以零字节(ASCII NUL
字符)而不是换行符。 像 -Z or - 空值 选项,这个选项可以是
与命令一起使用,例如 分类 -z 处理任意文件名。
定期 表情
正则表达式是描述一组字符串的模式。 常用表达
类似于算术表达式,通过使用各种运算符来构造
组合较小的表达式。
grep的 理解三种不同版本的正则表达式语法:“基本”(BRE),
“扩展”(ERE)和“perl”(PCRE)。 在 GNU grep的,可用没有区别
基本语法和扩展语法之间的功能。 在其他实现中,基本
正则表达式的功能不那么强大。 以下描述适用于扩展
常用表达; 后面总结了基本正则表达式的差异。
Perl 正则表达式提供了额外的功能,并记录在
前语法(3)和 模式(3),但只有在系统中有 PCRE 时才有效。
基本构建块是匹配单个字符的正则表达式。
大多数字符,包括所有字母和数字,都是匹配的正则表达式
他们自己。 任何具有特殊含义的元字符都可以通过在它前面加上一个
反斜杠。
时期 . 匹配任何单个字符。
字符 精品团课 和 支架 表达式
A 托架 表达 是一个包含在其中的字符列表 [ 和 ]. 它匹配任何单个
该列表中的字符; 如果列表的第一个字符是插入符号 ^ 然后它匹配
任何字符 而不去 在列表中。 例如,正则表达式 [0123456789] 火柴
任何一位数。
在括号表达式中,一个 范围 表达 由两个字符组成,由 a 分隔
连字符。 它匹配在两个字符之间排序的任何单个字符,包括,
使用语言环境的整理顺序和字符集。 例如,在默认 C
本地, [广告] 相当于 [A B C D]. 许多语言环境按字典顺序对字符进行排序,
在这些地方 [广告] 通常不等于 [A B C D]; 它可能是等价的
至 [aBbCcDd], 例如。 获取括号的传统解释
表达式,您可以通过设置使用 C 语言环境 LC_ALL 环境变量到
折扣值 C.
最后,某些命名的字符类是在括号表达式中预定义的,如
如下。 他们的名字是不言自明的,他们是 [:铝:], [:α:], [:控制:],
[:数字:], [:图形:], [:降低:], [:打印:], [:点:], [:空间:], [:上:]及
[:xdigit:]。 例如, [[:alnum:]] 表示数字和字母的字符类
当前语言环境。 在 C 语言环境和 ASCII 字符集编码中,这与
[0-9A-Z-Z]. (注意这些类名中的括号是符号名的一部分,
并且必须包含在分隔括号表达式的括号之外。)大多数
元字符在括号表达式中失去了它们的特殊含义。 包括一个
文字 ] 把它放在列表的第一位。 同样,要包含文字 ^ 把它放在任何地方
但首先。 最后,包括一个文字 - 把它放在最后。
锚固
插入符号 ^ 和美元符号 $ 是分别匹配空的元字符
行首和行尾的字符串。
这款 反斜杠 字符 和 Special 表达式
符号 \< 和 \> 分别匹配a开头和结尾的空字符串
单词。 符号 \b 匹配单词边缘的空字符串,并且 \B 符合
空字符串,前提是它是 而不去 在一个词的边缘。 符号 \w 是同义词
[_[:alnum:]] 和 \W 是同义词 [^_[:alnum:]].
重复
正则表达式后面可以跟几个重复运算符之一:
? 前一项是可选的,最多匹配一次。
* 前面的项目将匹配零次或多次。
+ 前一项将匹配一次或多次。
{n} 前一项完全匹配 n 倍。
{n,} 前面的项目匹配 n 或更多次。
{,m} 前一项最多匹配 m 次。 这是一个 GNU 扩展。
{n,m} 前一项至少匹配 n 次,但不超过 m 倍。
级联
两个正则表达式可以连接; 结果正则表达式匹配任何
通过连接分别匹配连接的两个子字符串形成的字符串
表达式。
轮换
两个正则表达式可以通过中缀运算符连接 |; 结果正则
表达式匹配与任一备用表达式匹配的任何字符串。
优先权
重复优先于串联,串联优先于
交替。 可以将整个表达式括在括号中以覆盖这些
优先规则并形成子表达式。
返回 案例 和 子表达式
反向引用 \n,其中 n 是单个数字,匹配之前匹配的子串
由 n正则表达式的括号子表达式。
基本版 vs 扩展 原价 表达式
在基本的正则表达式中,元字符 ?, +, {, |, (及 ) 失去他们的特别
意义; 而是使用反斜杠版本 \?, \+, \{, \|, \(及 \).
环境 变数
的行为 grep的 受以下环境变量影响。
类别的语言环境 LC_FOO 通过检查三个环境变量来指定
LC_ALL, LC_FOO, 朗, 以该顺序。 设置的这些变量中的第一个指定
语言环境。 例如,如果 LC_ALL 没有设置,但是 LC_消息 被设置为 PT_BR,则
巴西葡萄牙语语言环境用于 LC_消息 类别。 使用 C 语言环境,如果
如果未安装语言环境目录,或者如果
grep的 未使用国家语言支持 (NLS) 编译。
GREP_OPTIONS
此变量指定要放置在任何显式前面的默认选项
选项。 由于这会导致编写可移植脚本时出现问题,因此此功能将
在以后的版本中删除 grep的及 grep的 如果使用它会发出警告。 请用
取而代之的别名或脚本。
GREP_COLOR 颜色
此变量指定用于突出显示匹配(非空)文本的颜色。 它
不赞成使用 GREP_颜色,但还是支持。 这 mt, ms及 mc
的能力 GREP_颜色 优先于它。 它只能指定颜色
用于突出显示任何匹配行(选定行
当 -v 命令行选项被省略,或上下文行 -v is
指定的)。 默认是 01; 31,这意味着在
终端的默认背景。
GREP_颜色
指定用于突出显示各个部分的颜色和其他属性
输出。 它的值是一个以冒号分隔的功能列表,默认为
ms=01;31:mc=01;31:sl=:cx=:fn=35:ln=32:bn=32:se=36 与 rv 和 ne 布尔
省略了功能(即,false)。 支持的功能如下。
斯尔= 整个选定行的 SGR 子串(即匹配行 -v
命令行选项被省略,或不匹配的行 -v 指定)。
然而,如果布尔值 rv 能力和 -v 命令行选项都是
指定,它适用于上下文匹配行。 默认是
空(即终端的默认颜色对)。
cx = 整个上下文行的 SGR 子字符串(即,当 -v
命令行选项被省略,或匹配行时 -v 指定)。 如果
然而布尔值 rv 能力和 -v 命令行选项都是
指定,它改为应用于选定的非匹配行。 默认的
为空(即终端的默认颜色对)。
rv 颠倒(交换)含义的布尔值 斯尔= 和 cx =
能力当 -v 命令行选项被指定。 默认是
false(即,能力被省略)。
吨=01;31
用于匹配任何匹配行中的非空文本的 SGR 子串(即
选定行时 -v 命令行选项被省略,或上下文行
,尤其是 -v 指定)。 设置 this 相当于设置两者 毫秒= 和
麦克= 立即到相同的值。 默认为粗体红色文本前景
在当前行背景。
毫秒=01;31
用于匹配选定行中的非空文本的 SGR 子字符串。 (这只是
使用时 -v 命令行选项被省略。)的效果 斯尔= (或
cx = if rv) 功能在此启动时保持活动状态。默认值为
当前行背景上的粗体红色文本前景。
麦克=01;31
用于匹配上下文行中的非空文本的 SGR 子字符串。 (这只是
使用时 -v 命令行选项被指定。)的效果 cx =
(或 斯尔= if rv) 功能在此启动时保持活动状态。默认值为
当前行背景上的粗体红色文本前景。
fn=35 任何内容行前缀的文件名的 SGR 子字符串。 默认是一个
终端默认背景上的洋红色文本前景。
ln=32 任何内容行前缀的行号的 SGR 子字符串。 默认是一个
终端默认背景上的绿色文本前景。
十亿=32 任何内容行前缀的字节偏移的 SGR 子字符串。 默认是一个
终端默认背景上的绿色文本前景。
硒=36 插入在选定行字段之间的分隔符的 SGR 子字符串
(:),在上下文行字段之间,(-),以及相邻行组之间
当指定非零上下文时 (--)。 默认为青色文本
在终端的默认背景上的前景。
ne 防止使用 Erase in Line 清除到行尾的布尔值
(EL) 向右 (\33[K) 每次着色项目结束时。 这是需要的
不支持 EL 的终端。 否则它在终端上很有用
为此 背景色擦除 (BCE) 布尔 terminfo 功能不
应用,当选择的高亮颜色不影响背景时,或者
当 EL 太慢或引起太多闪烁时。 默认值为 false(即
能力被省略)。
请注意,布尔功能没有 =... 部分。 它们被省略(即,false)
默认情况下,并在指定时变为 true。
请参阅文本文档中的 Select Graphic Rendition (SGR) 部分
用于允许值及其作为字符的含义的终端
属性。 这些子串值是以十进制表示的整数,并且可以
用分号连接。 grep的 负责将结果组装成一个
完整的 SGR 序列(\33[...m)。 连接的常见值包括 1 为了大胆,
4 对于下划线, 5 为了眨眼, 7 对于逆, 39 对于默认前景色, 30 至
37 对于前景色, 90 至 97 对于 16 色模式前景色, 38; 5; 0 至
38; 5; 255 对于 88 色和 256 色模式的前景色, 49 默认
背景颜色, 40 至 47 对于背景颜色, 100 至 107 用于 16 色模式
背景颜色,和 48; 5; 0 至 48; 5; 255 用于 88 色和 256 色模式
背景颜色。
LC_ALL, LC_COLLATE, 朗
这些变量指定了语言环境 LC_COLLATE 类别,它决定
用于解释范围表达式的整理序列,例如 [az].
LC_ALL, LC_CTYPE, 朗
这些变量指定了语言环境 LC_CTYPE 类别,它决定了
字符类型,例如,哪些字符是空格。
LC_ALL, LC_消息, 朗
这些变量指定了语言环境 LC_消息 类别,它决定
那种语言 grep的 用于消息。 默认的 C 语言环境使用 American
英文讯息。
POSIXLY_CORRECT
如果设置, grep的 行为符合 POSIX 要求; 除此以外, grep的 表现得更像其他 GNU
程式。 POSIX 要求文件名后面的选项必须被视为
文件名; 默认情况下,这些选项被排列到操作数列表的前面
并被视为选项。 此外,POSIX 要求无法识别的选项
被诊断为“非法”,但由于它们并不真正违法,因此默认
是将它们诊断为“无效”。 POSIXLY_CORRECT 也禁用
_N_GNU_nonoption_argv_flags_, 如下面所描述的。
_N_GNU_nonoption_argv_flags_
(这里 N is grep的的数字进程 ID。)如果 i这种环境的特征
变量的值是 1,不考虑 i的第 th 个操作数 grep的 成为一种选择,
即使它看起来是一个。 shell 可以将此变量放入环境中
它运行的每个命令,指定哪些操作数是文件名的结果
通配符扩展,因此不应被视为选项。 这种行为
仅在 GNU C 库中可用,并且仅当 POSIXLY_CORRECT 未设置。
退出 状态
通常情况下,如果选择了一行,退出状态为 0,如果没有选择任何行,则为 1,如果选择为 2
发生错误。 然而,如果 -q or - 安静的 or - 沉默的 被使用并且一条线是
选择,即使发生错误,退出状态也为 0。
版权
版权所有 1998-2000, 2002, 2005-2016 Free Software Foundation, Inc.
这是免费软件; 请参阅复制条件的来源。 没有保修; 不是
即使是为了特定目的的适销性或适合性。
使用 onworks.net 服务在线使用 egrep