Articles of grep

颜色匹配,其他只是显示

我只是试图让grep显示所有的行,但匹配的应该有匹配的文字着色。 具体来说,我需要这样的东西: tail -f file.log | grep –color Exception 不幸的是我没有看到任何grep的选项,将同时显示不匹配的行和匹配的行(与颜色)。 有没有其他的工具在Unix / Linux的这将允许这个?

在macosx上重复curl + grep偶尔会给出不好的结果?

运行macosx 10.6.2,我看到一些非常奇怪的行为,用一个重复调用curl -o(file)的脚本,然后对其中的某个string进行grep。 偶尔grep返回1(找不到),当我期望0(find)。 这是脚本… # do this 1000 times for ii in `cat count.txt`; do rm -f a.txt rm -f e.txt curl –fail –stderr e.txt -j -o a.txt -s $MYURL if [ -e a.txt ] ; then # Occasionally a.txt doesn't finish writing on time grep "login-url" a.txt >/dev/null LASTERR=$? echo $LASTERR is lasterr […]

注释符合某种模式的所有行

我需要为当前目录中的每个文件和任何子目录(recursion地)注释掉包含“dlclose”的所有行。 鉴于我能从各种指南中find的东西,这是我迄今为止最好的猜测。 grep -lIR "dlclose" . | grep -v ".svn" | sed -i 's/.*dlclose.*/\/\/&/g' 两个greps成功find了我想要更改的所有文件,但是sed声明了一个unterminated s command 。

如何在FreeBSD中find包含指定string的文件?

我正在寻找方法来查找包含指定string文本的文件。 它应该尽可能快,但不是那么重要。 我正在阅读手册,我已经build立了这样的东西: grep my_string * -r ,它可以工作,但如果有很多目录要search。 有没有其他方法可以在FreeBSD中find包含指定string的文件?

grep,计数和sortingiptableslogin获取IP数量和DPT?

我怎么能grep计数和sortingiptables日志获取IP数量和DPT? 就像我用这个线索来获得最高的IP数量。 egrep -w "Invalid Packet" ipfirewall.log | grep -o '[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9]*' | sort | uniq -c | sort -r -n | head 但是如何通过DPT获取IP? 所以这将是: 250 192.168.1.1 DPT=3306 150 192.168.1.2 DPT=445 50 192.168.1.3 DPT=23 20 192.168.1.4 DPT=22 日志格式: Jul 19 04:50:28 server1 kernel: IN=eth0 OUT= MAC=xx:xx SRC=124.153.186.56 DST=xx.xx.xx.xx LEN=60 TOS=0x00 PREC=0x00 TTL=50 ID=19312 DF PROTO=TCP SPT=4379 […]

recursiongrep从/挂起

我在多个平台上使用了以下grepsearch模式: grep -r -I -D skip 'string_to_match' / 例如在FreeBSD 8.0 , FreeBSD 6.4和Debian 6.0 (squeeze)上。 命令做从根目录开始的recursionsearch,假定二进制文件没有'string_to_match'并跳过设备,套接字和命名pipe道。 FreeBSD 8.0和FreeBSD 6.4使用GNU grep版本2.5.1,而Debian 6.0使用GNU grep 2.6.3版本。 在FreeBSD 6.4上 ,打印到stderr的最后一个信息是“grep:/ dev / cuad0:Device busy” 。 在这个grep只是按照“top -m io -o total”闲置的时候grep的I / O使用不存在。 在FreeBSD 8.0下同样的行为是正确的,但是在我的安装中发送到stderr的最后一个信息是“grep:/tmp/.wine-0:Permission denied” 。 在Debian的情况下,最后输出到stderr是“grep:/ proc / sysrq-trigger:input/输出错误” 。 如果我在Debian下查看grep进程的I / O使用情况,那么下面是: root@Debian:~# iotop -bp 22439 Total […]

基本正则expression式与扩展正则expression式的含义

我认为*意味着在基本或扩展正则expression式之前的零个或更多的字符或类。 为什么echo hello| grep '*llo' echo hello| grep '*llo'失败,但echo hello |egrep '*llo'成功了吗?

Centosfind二进制文件中的文件

我已经运行了一个命令,在服务器上的文件中find一个string,如下所示: cd / grep -r "string to be found" * 服务器返回这样的结果 Binary file dev/disk/by-path/pci-0000:00:10.0-scsi-0:0:0:0-part1 matches Binary file dev/disk/by-path/pci-0000:00:10.0-scsi-0:0:0:0 matches 据我所知,这些是保存在RAIDarrays上的实际存储的文件(请纠正我,如果我错了)。 我怎样才能find我的比赛所在的位置? 有没有更快的解决scheme比运行“grep”所有服务器的文件? 感谢您的时间!

优化后面的grep以避免数字

当我查询docker images ,我得到这个: #> docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE local/debian 7.5 172c7702a46f 2 weeks ago 175.1 MB local/debian wheezy 172c7702a46f 2 weeks ago 175.1 MB 使用grep我提取图像标签: #> docker images | grep -oP '\S+(?=\s+172c7702a46f)' 7.5 wheezy 我怎样才能改进这只是为了获得wheezy ,避免任何匹配\d+\.\d+ ?

正则expression式匹配第一个单词和任何单词

我有一个包含许多条目列表的日志文件。 用grep正则expression式我想匹配第一个单词和另一个可以在任何string中的单词。 例如,如果我指定“user1”,search将search: grep -E '^(IP_CONNECT|IP_DISCONNECT) user1' file.txt 然而,这将不匹配,除非user1在string的开始,而我想匹配它,如果它出现在string中的任何地方。 这是怎么做的?