Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在grep输出中替换行号分隔符_Grep_Delimiter - Fatal编程技术网

如何在grep输出中替换行号分隔符

如何在grep输出中替换行号分隔符,grep,delimiter,Grep,Delimiter,我正在做: egrep -e "String" -in -A 2 file1.log 我得到的输出是 111:some text 112-some text 113-some text 如何将文件中每行开头的每一行号的^'[0-9]{1,9}-'替换为^'[0-9]{1,9}:'?所以它看起来像: 111:some text 112:some text 113:some text 将输出导入sed。这在这里起作用: grep ... | sed 's/^\([0-9]\+\)-/\1:/'

我正在做:

egrep -e "String" -in -A 2 file1.log
我得到的输出是

111:some text
112-some text
113-some text
如何将文件中每行开头的每一行号的^'[0-9]{1,9}-'替换为^'[0-9]{1,9}:'?所以它看起来像:

111:some text
112:some text
113:some text

将输出导入
sed
。这在这里起作用:

grep ... | sed 's/^\([0-9]\+\)-/\1:/'

看一看,希望有帮助!我试过了,但没有成功。我在一个2文件1.log | sed's/^'[0-9]{1,9}-'/^'[0-9]{1,9}:'/'非常感谢,thor:),是的,它工作正常,但它也删除了组分隔符'-'。正如解决方法一样,我使用grep的这个选项将组分隔符更改为“==”——“组分隔符==”@ypp:Yes我注意到了这一点,并将模式更改为使用
\+
量词,而不是
*