草庐IT

preg-grep

全部标签

linux - grep字符串中的多个通配符

假设我有一个包含以下内容的文件:Release2.1OS:RHELFile:package_el6_2.0.1.1_x86_64.rpmRelease2.1OS:RHELFile:package_el6_2.0.1.1_i686.rpmRelease2.1OS:RHELFile:package_el7_2.0.1.1_x86_64.rpmRelease2.1OS:RHELFile:package_el7_2.0.1.1_i686.rpm我想grep并匹配仅包含“package”、“el6”和“x86_64”的行我将如何使用grep在单行上执行此操作?该行必须匹配所有三个,grep不应该

linux - 如何将 grep 输出的值存储在变量中

我正在编写一个bash脚本,我必须在其中使用正则表达式来匹配字符串,然后将输出存储在一个变量中以重新使用它。这是我的脚本,#!/bin/shNAME="MET-3-get-code-from-string"por="$($NAME|grep-P-o-e'(?我尝试了很多方法,但我收到错误:./check.sh:MET-3-get-issue-id-from-branch-name:未找到如果我运行单独的grep命令,那么是的,它工作正常。但我无法存储输出。我也试过:por=$($NAME|grep-P-o-e'(?和许多其他类似的引用资料。但它不起作用。谁能帮我解决这个问题。我在bas

linux - Grep:列出 'per-file' 结果

有什么方法可以使用grep整齐地列出“每个文件”的结果。类似于:$grep-i-r-nSearch_Pattern.输出:file1.c:LINE_NO:..........Search_Pattern......./*LineContainingSearchPattern*/LINE_NO:..........Search_Pattern.......LINE_NO:..........Search_Pattern.......LINE_NO:..........Search_Pattern.......file2.c:LINE_NO:..........Search_Pattern

linux - grep 函数是否检测制表符分隔符?

我在这里有一个问题。我有一个原始文件A,其中包含如下列:LG1112223326262626TCGALG111222332626467789GCGG.....列由分隔符“TAB”分隔。我的问题是如果我得到如下列表B,如何从原始文件A中检索我的愿望线:LG1112223326262626LG1112223347681212.........我想知道grep函数是否可以做这样的事情grep-e"LG111222332626\t2626"(但grep似乎无法识别\t,正确的方法是什么。)谢谢大家。抱歉,如果我表达问题的方式有点困惑,希望你能读懂我=) 最佳答案

regex - Grep 删除 sem 相似的行?

我正在读取这样的文件:cataccess_logs|grepRuby确定哪些IP正在访问我的文件之一。它返回一个巨大的列表。我想删除半重复项,即这两行在技术上是相同的-除了具有不同的时间/日期戳。在包含数千个重复的庞大列表中-有没有办法只获取唯一的IP地址?1.2.3.4--[13/Apr/2014:14:20:17-0400]"GET/color.txtHTTP/1.1"404207"-""Ruby"1.2.3.4--[13/Apr/2014:14:20:38-0400]"GET/color.txtHTTP/1.1"404207"-""Ruby"1.2.3.4--[13/Apr/20

linux - Grep资源使用

我的任务是编写一个shell脚本来grep遍历Linux和Solaris服务器上许多目录中的数百个日志文件。一些日志以多种格式压缩,一些日志的大小为几GB。我担心grep在服务器上使用大量资源,并可能通过耗尽内存来关闭机器上运行的Web服务器(如果这可能发生的话)。我应该解压文件,grep它们然后再次压缩它们还是使用zgrep(或等效的)在压缩时搜索它们?使用一种方法比使用另一种方法是否有资源优势?此外,是否有一种简单的方法可以将命令的内存使用量限制为当前可用内存的百分比?如果有人可以解释在运行这些命令时内存使用情况是如何工作的,那将会有很大帮助。 最佳答案

regex - Grep 在 OpenBSD 和 Linux 中的行为不同。无法使命令工作

所以基本上这个命令所做的是安全地连接到一个网络域以获取我的外部IP地址,这在LinuxDebian系统上可以完美运行,但它不能在我的OpenBSD系统上正常运行。Curl命令工作正常,但是Grep命令出了点问题,因为它没有获取curl正在通过管道传输到它的IP。-Eo不能与OpenBSD一起使用吗?我无法通过手册页来判断..USERAGENT="Mozilla/4.0"WEB_LOCATION="https://duckduckgo.com/?q=whats+my+ip"curl-s--retry3--max-time5-tlsv1.2--user-agent$USERAGENT$WE

Linux 查找文件和 grep 然后按日期列出

我正在尝试查找名称为formClass.php且包含字符串checkCookie的文件,我想按显示日期的日期列出文件,大小、所有者和组。这些文件在我的主目录中。我有这个工作,但它不显示日期、所有者等...find/home-nameformClass.php-execgrep-l"checkCookie"{}\;我在想我可以像这样将“trhg”添加到列表中,但它没有用:find/home-nameformClass.php-execgrep-ltrhg"checkCookie"{}\;谢谢 最佳答案 尝试find/home-name

linux - shell 脚本 : Using grep and tr in the shebang

我的系统上有这个脚本:#!/bin/grepcatcaterpillarcatlolmorecat当我运行它时,我得到了预期的输出,#!/bin/grepcatcaterpillarcatmorecat但是,如果我改用tr,在脚本中#!/usr/bin/tr'a''e'caterpillarcatlolmorecat我希望得到#!/usr/bin/tr'a''e'ceterpillercetlolmorecet但是没有打印任何内容,如果我手动键入cat,我会得到c/t。如何更改脚本使其表现得像第一个脚本? 最佳答案 shebang行

linux - Grep 以特定字符开头的所有字符串实例

我想grep出所有以字符“rs”开头的字符串实例(仅来自一个文件)并将完整的字符串通过管道传输到一个新文件中。我设法获得了实例的数量,但我不知道如何将它们放入新文件中:grep-crs文件中一行的示例是:1203823forwardefjdhgvrs124054t8dhdfhfhs12045345backefjdkkjfrs12445368dhdfhfhs我只想抓取rs字符串并将其移动到ne文件中。有人可以帮我弄管道吗?我四处阅读了一下,但发现对我来说并不是特别有帮助。谢谢 最佳答案 我建议是这样的:egrep-o"(\s(rs\S