2

我有一些问题。
我有一个大文件,它提供了一个带有文本“这是错误”的错误。
在源代码中,我有很多行相同的文本。我如何将所有这些行更改为计数行。
我的意思是我想这样改变它:

some_function ()
 {
 provide  "it's an error"
  } 
 another_function ()
 provide  "it's an error"
 provide  "it's an error"

现在我想得到下一个:

some_function ()
 {
 provide  "1 it's an error"
  } 
 another_function ()
 provide  "2 it's an error"
 provide  "3 it's an error"

或相同但带有行号。

4

2 回答 2

3

带行号:

awk '{gsub(/it.s an error/, NR" &"); print }' filename
于 2012-09-11T10:59:41.600 回答
2

您可以使用 Vim 来实现这一点(正如您在帖子中标记的那样):

:let i=1 | g/\zeit's an error/s//\=i." "/g | let i=i+1

或者使用这种其他方式来枚举错误行的错误:

:%s/\zeit's an error/\=line('.')." "/g
于 2012-09-11T16:38:03.333 回答