grep
传统的 grep 程序,在没有参数的情况下,只输出符合 RE 字符串之句子. 常见参数如下:
-v: 逆反模示,只输出”不含” RE 字符串之句子.
-r: 递归模式,可同时处理所有层级子目录里的文件.
-q: 静默模式,不输出任何结果(stderr 除外. 常用以获取 return value,符合为 true,否则为 false .)
-i: 忽略大小写.
-w: 整词比对,类似 <word> .
-n: 同时输出行号.
-c: 只输出符合比对的行数.
-l: 只输出符合比对的文件名称.
-o: 只输出符合 RE 的字符串. (gnu 新版独有,不见得所有版本都支持.)
-E: 切换为 egrep .
egrep
为 grep 的扩充版本,改良了许多传统 grep 不能或不便的操作. 比方说:
- grep 之下不支持 ? 与 + 这两种 modifier,但 egrep 则可.
- grep 不支持 a|b 或 (abc|xyz) 这类”或一”比对,但 egrep 则可.
- grep 在处理 {n,m} 时,需用 { 与 } 处理,但 egrep 则不需.
诸如此类的… 我个人会建议能用 egrep 就不用 grep
fgrep
不作 RE 处理,表达式仅作一般字符串处理,所有 Meta 均失去功能.
选项解释
In addition, three variant programs egrep, fgrep and rgrep are
available. egrep is the same as grep -E. fgrep is the same as
grep -F. rgrep is the same as grep -r. Direct invocation as either
egrep or fgrep is deprecated, but is provided to allow historical
applications that rely on them to run unmodified.-E,--extended-regexp
Interpret PATTERN as an extended regular expression_r(ERE,see
below). (-E is specified by POSIX.)-F,--fixed-strings
Interpret PATTERN as a list of fixed strings, separated by
newlines, any of which is to be matched. (-F is specified by
POSIX.)
机译:
此外,还有三个变体程序,例如egrep,fgrep和rgrep可用。 egrep与grep -E相同。 fgrep与grep -F。 rgrep与grep -r相同。 可以直接调用egrep或fgrep已弃用,但提供以允许历史记录依赖它们运行的应用程序无需修改。
-E,-extended-regexp
将PATTERN解释为扩展的正则表达式_r(ERE,请参见下面)。 (-E由POSIX指定。)
-F,-固定字符串
将PATTERN解释为固定字符串列表,并以换行符,任何要匹配的。 (-F由POSIX。)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。