草庐IT

grepping

全部标签

linux - grep 遍历数千个 gz 文件的最快方法?

我在一个目录中有数千个.gz文件。我需要通过grep查找字符串Mouse::Handler,以下是最快(也是最准确)的方法吗?find.-name"*.gz"-execzgrep-H'Mouse::Handler'{}\;理想情况下,我还想打印出我在其中找到该字符串的那一行。我在RHELlinux机器上运行。 最佳答案 您可以使用并行搜索find.-name"*.gz"|xargs-n1-PNUMzgrep-H'Mouse::Handler'NUM是您拥有的核心数量。 关于linux-g

linux - grep 遍历数千个 gz 文件的最快方法?

我在一个目录中有数千个.gz文件。我需要通过grep查找字符串Mouse::Handler,以下是最快(也是最准确)的方法吗?find.-name"*.gz"-execzgrep-H'Mouse::Handler'{}\;理想情况下,我还想打印出我在其中找到该字符串的那一行。我在RHELlinux机器上运行。 最佳答案 您可以使用并行搜索find.-name"*.gz"|xargs-n1-PNUMzgrep-H'Mouse::Handler'NUM是您拥有的核心数量。 关于linux-g

regex - 使用 grep 仅匹配一行中的模式一次

我有这个:echo12345|grep-o'[[:digit:]]\{1,4\}'这给出了这个:12345我明白发生了什么。如何阻止grep在1次成功匹配后尝试继续匹配?如何获取唯一1234 最佳答案 你是想让grep停止匹配还是只关心第一个匹配。你可以使用head如果后者是真的...`grepstuff|head-n1`Grep是基于行的实用程序,因此-m1标志告诉grep在它匹配第一行line后停止,这在实践中与head结合使用时非常好。 关于regex-使用grep仅匹配一行中的模

regex - 使用 grep 仅匹配一行中的模式一次

我有这个:echo12345|grep-o'[[:digit:]]\{1,4\}'这给出了这个:12345我明白发生了什么。如何阻止grep在1次成功匹配后尝试继续匹配?如何获取唯一1234 最佳答案 你是想让grep停止匹配还是只关心第一个匹配。你可以使用head如果后者是真的...`grepstuff|head-n1`Grep是基于行的实用程序,因此-m1标志告诉grep在它匹配第一行line后停止,这在实践中与head结合使用时非常好。 关于regex-使用grep仅匹配一行中的模

linux - grep 基于时间戳的文件

这应该很简单,但我还没弄明白。我在Linux下有超过4GB的大型代码库。在构建过程中会生成一些头文件和xml文件(使用gnumake)。如果重要,头文件是基于xml文件生成的。我想在某个时间实例(它是我的开始编译时间)之后最后一次修改的头文件中搜索关键字,类似的xml文件,但单独的grep查询。如果我在所有可能的头文件或xml文件上运行它,会花费很多时间。只有那些自动生成的。此外,搜索必须是递归的,因为有很多目录和子目录。 最佳答案 你可以使用find命令:find.-mtime0-typef打印当前目录(.)及其下所有文件(-ty

linux - grep 基于时间戳的文件

这应该很简单,但我还没弄明白。我在Linux下有超过4GB的大型代码库。在构建过程中会生成一些头文件和xml文件(使用gnumake)。如果重要,头文件是基于xml文件生成的。我想在某个时间实例(它是我的开始编译时间)之后最后一次修改的头文件中搜索关键字,类似的xml文件,但单独的grep查询。如果我在所有可能的头文件或xml文件上运行它,会花费很多时间。只有那些自动生成的。此外,搜索必须是递归的,因为有很多目录和子目录。 最佳答案 你可以使用find命令:find.-mtime0-typef打印当前目录(.)及其下所有文件(-ty

linux - 使用 grep 和 ls -a 命令

使用ls–a和grep,您将如何列出/usr中所有以字母p或字母r或the字母s使用单个grep命令?这样对吗?ls–a|grep[prs]/usr 最佳答案 ls-a/usr|grep'^[prs]'将从ls-a/usr的输出中选择(这是/usr中的文件列表,由换行符分隔)以p中的任何一个开头的行,r或s字符。这可能是您的老师所期望的,但这是错误的或者至少是不可靠的。文件名可以由多行组成,因为换行符与Linux或任何unix上的文件名中的任何字符一样有效。因此该命令不会返回名称以p开头的文件,q或s,但以p开头的文件名行,q或s.

linux - 使用 grep 和 ls -a 命令

使用ls–a和grep,您将如何列出/usr中所有以字母p或字母r或the字母s使用单个grep命令?这样对吗?ls–a|grep[prs]/usr 最佳答案 ls-a/usr|grep'^[prs]'将从ls-a/usr的输出中选择(这是/usr中的文件列表,由换行符分隔)以p中的任何一个开头的行,r或s字符。这可能是您的老师所期望的,但这是错误的或者至少是不可靠的。文件名可以由多行组成,因为换行符与Linux或任何unix上的文件名中的任何字符一样有效。因此该命令不会返回名称以p开头的文件,q或s,但以p开头的文件名行,q或s.

linux - "grep -rnw": search for a string in all files

相关问题:HowdoIfindallfilescontainingspecifictextonLinux?我一直在使用上面问题的答案中提到的命令来搜索所有文件中出现的字符串:grep-rnw'/path/to/somewhere/'-e"pattern"不过最近遇到了一个问题,如下图所示:看起来这个命令只能识别突出为单词或其他内容的字符串。我应该如何修改命令以改进我的搜索结果? 最佳答案 explainshell有助于解释您的命令,并摘录自mangrep:-w,--word-regexpSelectonlythoselinescon

linux - "grep -rnw": search for a string in all files

相关问题:HowdoIfindallfilescontainingspecifictextonLinux?我一直在使用上面问题的答案中提到的命令来搜索所有文件中出现的字符串:grep-rnw'/path/to/somewhere/'-e"pattern"不过最近遇到了一个问题,如下图所示:看起来这个命令只能识别突出为单词或其他内容的字符串。我应该如何修改命令以改进我的搜索结果? 最佳答案 explainshell有助于解释您的命令,并摘录自mangrep:-w,--word-regexpSelectonlythoselinescon