grep命令中的-E怎么用,我在网上找到的解释如下: -E将每个指定模式视作扩展的正则表达式(ERE)。ERE 的空值将匹配所有的行。 注:带有 -E 标志的 grep 命令等价于 egrep 命令,只不过它们的错误和使用信息不同以及 -s 标志的作用不同。 具体用法我还是不理解,望高手指点
by turkeyNUPT - Shell - 2008-12-01 14:32:17 阅读(1960) 回复(5)
grep 命令用于搜索由 Pattern 参数指定的模式,并将每个匹配的行写入标准输出中。这些模式是具有限定的正则表达式,它们使用 ed 或 egrep 命令样式。grep 命令使用压缩的不确定算法。 如果在 File 参数中指定了多个名称,grep 命令将显示包含匹配行的文件的名称。对 shell 有特殊含义的字符 ($, *, [, |, ^, (, ), \ ) 出现在 Pattern 参数中时必须带双引号。如果 Pattern 参数不是简单字符串,通常必须用单引号将整个模式括起来。...
比如如下日志,我需要过滤出第4列等于192.168.0.22的所有行,如何实现? Apr 16 16:12:07 localhost sshd(pam_unix)[8344]: session opened for user root by root(uid=0) Apr 16 16:16:39 192.168.0.22 sshd(pam_unix)[26583]: session opened for user root by (uid=0) Apr 16 16:18:35 localhost nagios: Caught SIGTERM, shutting down... Apr 16 16:18:35 localhost nagios: Successfully shutdown... (PID=748) Apr 16 16:18...
我是一个shell 菜鸟,谢谢帮忙。 我知道 ls -l | grep ^d 可只显示当前目录下的子目录,可目录名是在字符串的最后,该如何提取 ls -l | grep ^- 也是同样的问题 今天花了一下午时间看了shell,可还是发现搞不顶,shell这玩意太灵活了 谢谢
比如说在print目录下有上百个文件, 其中有一个或者几个文件含有 'good morning' 这个字符串 怎么用grep命令把这几个文件找出来?? man帮助我看了N遍了 也没看明白 里面说的太罗嗦了 除了grep 还有别的命令能完成这个工作吗?
在用grep命令搜索文件内容时,遇到一个问题,即:当该文件内容一行过长时,grep搜索出的结果未能完全显示出所搜索出那一行的内容,而是截取了前面一部分显示。现在问题是,如何才能完全显示出来? 举例如下:某个文件为file1.unl,以下为其内容: 111111111|22222|33333333|44444444|55555555555|6666666|777777777777 如果此时我用: #grep "22222" file1.unl 显示结果为: 111111111|22222|33333333| \ 如何才能完整显示该行?