Questions tagged «grep»

grep是最初为Unix编写的命令行文本搜索实用程序。它使用正则表达式来匹配文本,并且通常用作管道中的过滤器。仅当您的问题与使用grep或基于grep的API进行编程有关时,才使用此标签。与grep命令行选项本身的使用或故障排除有关的问题是题外话。

9
如何grep和替换
我需要在目录中的所有文件和子目录中递归搜索指定的字符串,并将该字符串替换为另一个字符串。 我知道找到它的命令可能像这样: grep 'string_to_find' -r ./* 但是,如何string_to_find用另一个字符串替换每个的实例?
251 linux  grep  replace 

11
在一个文件中查找不在另一个文件中的行的快速方法?
我有两个大文件(文件名集)。每个文件中大约30.000行。我试图找到一种快速的方法来查找file2中不存在的行。 例如,如果这是file1: line1 line2 line3 这是file2: line1 line4 line5 然后我的结果/输出应该是: line2 line3 这有效: grep -v -f file2 file1 但是在我的大文件上使用时,它非常非常慢。 我怀疑有一种使用diff()的好方法,但是输出应该只是行,没有别的,我似乎找不到用于此的开关。 有人可以使用bash和基本的Linux二进制文件来帮助我找到一种快速的方法吗? 编辑:要跟进我自己的问题,这是迄今为止使用diff()找到的最好方法: diff file2 file1 | grep '^>' | sed 's/^>\ //' 当然,必须有更好的方法吗?
241 bash  grep  find  diff 

5
如何反转grep表达式
以下grep表达式成功列出了当前目录和子目录中的所有.exe和.html文件。 ls -R |grep -E .*[\.exe]$\|.*[\.html]$ 我该如何反转此结果以列出那些不是.html或.exe的结果。(即!=。)
237 regex  linux  grep 


3
grep不显示路径/文件:行
你如何grep只返回匹配的行?即结果中省略了路径/文件名。 在这种情况下,我想查看当前目录中的所有.bar文件,并搜索FOO。 find . -name '*.bar' -exec grep -Hn FOO {} \;
234 linux  unix  grep  find 

19
我怎样才能发现忽略.svn目录?
我经常使用该find命令搜索源代码,删除文件等等。令人讨厌的是,由于Subversion在每个文件的.svn/text-base/目录中存储了每个文件的重复项,因此我的简单搜索最终会得到很多重复的结果。例如,我要递归搜索uint多个messages.h和messages.cpp文件: # find -name 'messages.*' -exec grep -Iw uint {} + ./messages.cpp: Log::verbose << "Discarding out of date message: id " << uint(olderMessage.id) ./messages.cpp: Log::verbose << "Added to send queue: " << *message << ": id " << uint(preparedMessage->id) ./messages.cpp: Log::error << "Received message with invalid SHA-1 hash: id " …
227 linux  find  bash  grep  svn 



5
如何对目录中的所有文件执行grep操作
使用xenserver,我想对目录中的每个文件执行一条命令,从命令输出中提取一些内容并将其附加到文件中。 我很清楚我要使用的命令以及如何根据需要grep输出字符串。 但是我不清楚的是如何在每个文件上执行此命令,然后转到下一个,直到找不到更多文件。
218 linux  shell  grep 

11
如何只显示匹配的行之后的下一行?
grep -A1 'blah' logfile 多亏了此命令,每行中都有'blah'的行,我得到了包含'blah'的行以及日志文件中下一行的输出。这可能很简单,但是我找不到一种方法来省略具有“ blah”的行,而仅在输出中显示下一行。
218 awk  sed  grep 

21
用grep在一行中匹配两个字符串
我试图用来grep匹配包含两个不同字符串的行。我尝试了以下内容,但此匹配包含以下内容的行 string1 或 string2的这不是我想要的。 grep 'string1\|string2' filename 那我怎么搭配 grep只与包含两个字符串的行?
218 regex  linux  string  grep 



2
如何在grep中禁止二进制文件匹配结果[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 3年前关闭。 改善这个问题 grep在Linux中使用时,结果通常包含很多“二进制文件XXX匹配项”,我并不在乎。如何隐藏这部分结果,或者如何在grep中排除二进制文件?
214 linux  grep 

25
如何使用grep在多行中查找模式?
我想查找具有该顺序的“ abc”和“ efg”的文件,并且这两个字符串在该文件的不同行上。例如:一个包含以下内容的文件: blah blah.. blah blah.. blah abc blah blah blah.. blah blah.. blah blah.. blah efg blah blah blah blah.. blah blah.. 应该匹配。
208 regex  grep 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.