Articles of grep

grepfind从模式A开始的行,直到模式B匹配

我有一个包含像这样的位的日志: [2012-04-16 15:16:43,827: DEBUG/PoolWorker-2] {'feed': {}, 'bozo': 1, 'bozo_exception': URLError(error(110, 'Connection timed out'),), 'entries': []} [2012-04-16 15:16:43,827: ERROR/PoolWorker-2] get_entries Traceback (most recent call last): File "/opt/myapp/app.py", line 491, in get_entries logging.getLogger(__name__).debug("Title: %s" % doc.title) File "build/bdist.linux-x86_64/egg/feedparser.py", line 423, in __getattr__ raise AttributeError, "object has no attribute '%s'" % key AttributeError: object has no attribute 'title' […]

solaris中的solaris + grep语法

我的目标是在solaris和linux上匹配来自主机文件的stringsnmpmanager 以下命令在Linux(红帽子5.1)上工作,但不适用于SunOS,请咨询如何使语法适合solaris? 来自solaris OS的例子 grep -icE '(^|[[:space:]])snmpmanager($|[[:space:]])' /etc/hosts grep: illegal option — E 我固定之后 egrep -i '(^|[[:space:]])snmpmanager($|[[:space:]])' /etc/hosts or egrep -i '(^|[\s])snmpmanager($|\s])' /etc/hosts or egrep -i '(^|[\t])snmpmanager($|\t])' /etc/hosts 但我没有得到任何匹配输出(但已经在主机文件中定义了snmpmanager)? 我的主机文件 10.170.10.5 loghost 10.170.10.61 Master SyslogSer vip Tcc NtpServer1 NtpServer2 snmpManager snmpManagerPA1 snmpManagerPA2

如何报告通过greppipe道后的stringfind的文件名?

我一直在* nix周围,记得以前做过这些,现在这些神经通路已经不存在了……我在/ usr / local / lib中search包含img_convert的文件,因为我得到一个链接错误,并希望find包含该引用的库。 该命令查找引用,但不打印包含的文件名称: $ strings /usr/local/lib/* | grep 'img_convert' img_convert img_convert 当然,我可以编写脚本,但是我敢肯定,有一种方法可以从命令行执行此操作…所以,任何帮助的赞赏!

ls | grep正则expression式,忽略.tab文件,

我知道一些正则expression式,但我不知道如何得到这个工作。 我想列出所有没有.tab的文件。 并没有〜在文件名的末尾,不是.o(或.bin) 我可以列出所有.tab文件。 通过写作 ls | grep .tab. 但是我不知道如何让它忽略这些文件并列出其他所有内容。 我试过了 ls | grep [^(.tab.)] 但有一个错误,并认为我最后的正则expression式会是 ls | grep ([^(.tab.)]|.o$|.bin$) 但是我从来没有做过太多的正则expression式,所以我相信即使语法正确,最终的结果也是错误的。

将Linuxterminalredirect到剪贴板

是否有可能在Linuxterminal的输出redirect到剪贴板? 现在我正在使用Ubuntu 9.10,我只需右键单击并“复制”选定的文本。 如果我可以这样下去会更容易 grep sometext myfile || clipboard

尾-f,然后退出匹配的string

我想configuration一个启动脚本,它将启动tomcat,监视string“Server startup”的catalina.out,然后运行另一个进程。 我一直在尝试tail -f与grep和awk的各种组合,但还没有任何工作。 我遇到的主要问题似乎是在grep或awk匹配string后迫使尾部死亡。 我简化了下面的testing用例。 test.sh is listed below: #!/bin/sh rm -f child.out ./child.sh > child.out & tail -f child.out | grep -q B child.sh is listed below: #!/bin/sh echo A sleep 20 echo B echo C sleep 40 echo D 我看到的行为是,grep在20秒后退出,但是尾巴会再花40秒死亡。 我明白为什么会发生这种情况 – tail只会注意到,在写入数据的时候pipe道已经不存在了,只有当数据被附加到文件时才会发生。 这是由尾巴是缓冲数据和输出B和C字符作为一个单一的写(我证实了这一点)的事实复合。 我试图用我在其他地方find的解决scheme来解决这个问题,例如使用unbuffer命令,但是这并没有帮助。 任何人有什么想法如何得到这个工作,我期望吗? 或者等待成功的Tomcat开始的想法(考虑等待TCP端口知道它已经开始,但是怀疑这会变得更复杂,现在我正在尝试做)。 我已经设法让awk在比赛中做“killall tail”,但是我对这个解决scheme并不满意。 注意我试图让这个在RHEL4上工作。

忽略行grep

我正在运行一个进程输出非常恼人的消息。 我宁愿不删除该行,但只是用grep删除它 要忽略的消息都包含“请求”一词。 我可以很容易地只用这些线 $> myproc | grep requests 我怎么会grep IGNORE行与请求的单词?

grep的问题,如何过滤几种types的模式?

我是控制台新手。 据我所知,匹配这样的多个模式: aaa|bbb 但是,| 字符是在控制台上的pipe道,所以我怎么能指定这些多个模式的grep?

在目录中find一个特定的string

我想要做到以下几点: cat *.xml | grep some_string_here 这告诉我一个特定的string是否存在于目录中的xml文件中。 不幸的是,它不告诉我哪个文件。 我怎么能做得更好? cat命令没有看到我有一个开关,添加一个文件名前缀的输出…

是否有一个标志可以传递给`df`或`mount`,使它们只显示本地挂载的文件系统的结果?

当我检查本地挂载的文件系统的情况时,我已经厌倦了手动egrep NFS和SMB挂载的文件系统。 所以,我的问题是:是否有一些标志的组合,我可以传递给df或mount ,这将迫使他们只显示本地文件系统,并跳过任何和所有networking安装的?