草庐IT

preg_grep

全部标签

java - 如何使用 grep 从日志文件捕获 Java 异常,包括堆栈跟踪?

总结我正在尝试使用grep命令从日志文件中获取日志。但是,我可以匹配时间戳,但没有得到我需要的完整堆栈跟踪。日志文件示例[1/10/1623:55:33:018PST]00000057ServerObjESECJ0373E:Exceptionmessageatcom.own.ws.wim.util.UniqueNameHelper.formatUniqueName(UniqueNameHelper.java:102)atcom.own.ws.wim.ProfileManager.getImpl(ProfileManager.java:1569)我尝试过的我能够获取日志条目,但我也想要堆

将GREP输出传递到变量,并将该变量用作SELL脚本中的SED输入

我想编写一个外壳脚本,该脚本使用GREP从文件中获取一行号码,并将该行号用作SED命令的头和尾部来切割文件。我的脚本看起来像这样:head=$(grep-n-i-B1"^\s\+abcd"|head-n1|cut-d:-f1)tail=$(grep-n-i-B1"efgh"|tail-n1|cut-d:-f1)if($head!=NULL)thensed-n"$head,$tailp".txt>.txtfi我的目标是使用第一个GREP,并在与图案匹配时获取头线号,然后使用第二个GREP在与图案匹配时获取尾线号,并将其用作SED的输入,并使用-n开关和-n开关和创建一个仅具有从头到尾的线号的文件

PHP preg_replace 将 $ 转换为字母 S

我目前有一个非常棒的preg_replace系统可以满足我的seo需求,但我在使用一个字符时遇到了问题,那就是$.我的代码将$返回为空白,但我希望它能将$变成字母S。这可能只是一个小调整,但我确定如何将它挑出来。$urlname=preg_replace("/[^a-zA-Z0-9\/_|+-]/",'',$info['name']);$urlname=strtolower(trim($urlname,'-'));$urlname=preg_replace("/[\/_|+-]+/",'-',$urlname);$seourl=strtolower($urlname);

php - preg_replace 脚本,链接标记不起作用

我使用以下代码从我的字符串中删除脚本、链接标签,$contents='insidetaghfgkdhgjhinside2';$ss=preg_replace('#(.*?)#is','',$contents);echohtmlspecialchars($ss);它工作正常。但是我可以为此使用类似于html解析的任何东西而不是preg_match吗? 最佳答案 这里有几件事你可以做htmlspecialchars()可以证明那些标签没用striptags()移除所有HTML标签但是您使用的技术是正确的。然而,这是一个改进的版本echo

将GREP结果放入可变

我对Bash脚本有问题。我有一个特定位置的文件列表。我只需要从中约会,然后将其与另一个日期进行比较。foriin*.gz;doecho$i|grep-Eo'[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}'done以上是grep正确从文件名获得的日期正确,但仅在我使用时才echo。在其他情况下,我有错误。我努力了:tmp=$(echo$i|grep-Eo'[[:digit:]]{4}-[[:digit:]]{2}-[[:digit:]]{2}')也不起作用。有什么建议么?我会感谢小帮助!看答案我不会使用grep在这里利用bash内置的常规表达处理。for

c++ - 我怎样才能 grep 遍历当前在 vim 中打开的文件中#included 的所有文件?

假设我在vim中打开了以下.hpp文件:#pragmaonce#include"a.hpp"#include"b.hpp"#include"c.hpp"#include//somecode现在,假设我想在任何包含的文件中搜索术语Token的任何出现(也可能在它们包含的文件中)。我怎样才能轻松做到这一点?我想跳过所有无法从我当前的vimpath中找到的文件,例如在这种情况下,我的路径中可能没有boost,所以我希望它不在boost/something.hpp中搜索。 最佳答案 您可以使用include-searchvim中可用的功能。

grep json的关键名称值。(BusyBox没有选项-P)

我发现了许多讨论“如何抓住JSON值”的线程。但不幸的是,对我和所有使用Busybox(嵌入式Linux)的GREP的人毫无用处。此GREP版本没有选项“-p”(PerlExp)。仅可用“-e”(扩展的REGEXP)。BusyBoxv1.20.2()multi-callbinary.Usage:grep[-HhnlLoqvsriwFE][-mN][-A/B/CN]PATTERN/-ePATTERN.../-fFILE[FILE]...SearchforPATTERNinFILEs(orstdin)-HAdd'filename:'prefix-hDonotadd'filename:'prefix

BASH:更改文件时执行操作(GREP)

谷歌搜索了很多,没有找到一个工作解决方案。我是工程师,而不是程序员。只需要这个工具。因此:我有一个文件“test2.dat”,我想每次更改它。我没有inotifywait,也没有改变或安装任何类似的东西,也没有权利(甚至不想像我希望这个脚本普遍起作用)。有什么建议么?WhatItried:LTIME='stat-c%Ztest2.dat'whiletruedoATIME='stat-c%Ztest2.dat'if[["$ATIME"!="$LTIME"]]thengrep-i"15RT"test2.dat>test_grep2.txtLTIME=$ATIMEfisleep5done但这基本上没

Linux--文件或者文件内容的查找(find、locate、grep等)

目录一、Linux中的文件查找总体分类1、find1.1、使用man命令查看1.2、find的详解1.2.1、find的完整书写格式1.2.2、find常用参数详解1.2.3、find实操2、通过locate命令去找2.1、查看我们locate的官方文档2.2、locate实操3、通过grep根据查找文件内容去找3.1、grep用法3.2、grep实操一、Linux中的文件查找总体分类1、find1.1、使用man命令查看使用man命令(退出使用快捷键q)来查看我们的使用方法:option参数的详解:官方给的例子:1.2、find的详解1.2.1、find的完整书写格式完整的用法:find  

Hadoop grep转储sql

我想使用ApacheHadoop解析大文件(每个~~20MB)。这些文件是postegresql转储(即主要是CREATETABLE和INSERT)。我只需要首先过滤掉不是CREATETABLE或INSERTINTO的任何内容。所以我决定使用带有^(CREATETABLE|INSERT).*;$模式的grepmapreduce(以CREATETABLE或INSERT开头并以“;”结尾的行)。我的问题是其中一些创建和插入需要多行(因为我猜模式真的很大)所以模式根本无法匹配它们(比如CREATETABLEtest(\n“id”...\n...“名称”...\n);)我想我可以编写一个map