Git 将文本放入“中”<&引用;及&燃气轮机&引用;和grep在一起
我试图在“”内的file.txt中grep一个单词两天,但无法获取它。例如,我在file.txt中有类似的内容:Git 将文本放入“中”<&引用;及&燃气轮机&引用;和grep在一起,git,batch-file,Git,Batch File,我试图在“”内的file.txt中grep一个单词两天,但无法获取它。例如,我在file.txt中有类似的内容: 30993250(2014-09-22 12:41:56+0200365) 它来自一个git-L 365,+1路径\to\file.cpp-e,我只想恢复里面的电子邮件。我正在尝试以下代码: grep-oP'(?grep将查找并显示行,它不会从行中删除任何内容 但在您的情况下,您可以读取结果并删除字符 grep -oP '["\074].*["\076]' ..\log\file.t
30993250(2014-09-22 12:41:56+0200365)
它来自一个git-L 365,+1路径\to\file.cpp-e
,我只想恢复里面的电子邮件。我正在尝试以下代码:
grep-oP'(?grep将查找并显示行,它不会从行中删除任何内容
但在您的情况下,您可以读取结果并删除
字符
grep -oP '["\074].*["\076]' ..\log\file.txt > ..\log\result.txt
setlocal EnableDelayedExpansion
set /p line= < ..\log\result.txt
set "line=!line:<=!"
set "line=!line:>=!"
echo !line!
grep-oP'[“\074].[“\076]'..\log\file.txt>。\log\result.txt
setlocal EnableDelayedExpansion
设置/p行=<..\log\result.txt
设置“行=!行:=!”
回声!线路!
perl模式-p
允许向后查看。注意-我正在使用GNU grep for Windows
grep -P -o "(?<=<)[^>]+(?=>)" ..\log\file.txt >..\log\result.txt
grep-P-o“(?)”。\log\file.txt>。\log\result.txt
对于无法访问grep的Windows批处理用户(某些公司不允许使用第三方exe程序),您可以使用my-纯脚本正则表达式搜索/替换实用程序,该实用程序在Windows上本机运行
jrepl "<([^>]+)>" $1 /jmatch /f ..\log\file.txt /o ..\log\result.txt
jrepl“]+)>“$1/jmatch/f..\log\file.txt/o..\log\result.txt
这一个非常接近grep-o']\+'
。您有可用的awk吗?然后您可以使用sed:awk-F'[>使用sed:sed/^[^@FredrikPihl感谢您的回答。我尝试过awk(在windows上为我gawk…)和sed,但它从来都不起作用:(我编辑我的帖子,因为我找到了解决方案的开始。@FredrikPihl也许您可以帮我删除此内容“”?您是否尝试过使用--ceral
输出?git bull-p-L 365,+1 path\to\file.cpp-e
。grep-o
选项只打印匹配的内容,而不是整行OK,根据这一语法,它也在工作:gawk-F”[>并且grep-p
支持向后看。请参阅