0

我有一个像

//output:One line,file info always
-hF1
+ffn
-"format=%(%f %l%): Error -> %t %n %m"

//Do not break lines
-width(0,0)

我想要做的是从文本文件中读取文本并将搜索文本所在的完整行替换为另一行。

示例:上述文件的输出应类似于

    //output:One line,file info always
    -hF1
    +ffn
    //See below line is changed
    -"format=<message><file>%f</file> <line>%l</line> <type>%t</type> <code>%n</code> <desc>%m</desc></message>"<desc>%m</desc></message>"

    //Do not break lines
    -width(0,0)

在这里,我在文本文件中搜索了单词“格式”并替换了该完整行。

4

1 回答 1

0

使用这个批处理文件:repl.bat - http://www.dostips.com/forum/viewtopic.php?f=3&t=3855 这个命令在这里工作。input.txt 和 output.txt 是文件,\x22 代表一个引号。顺便说一句,您的替换命令有不平衡的引号。正在搜索的字符串format=位于该行中的任何位置。

type input.txt|repl "^.*format=.*" "-\x22format=<message><file>%f</file> <line>%l</line> <type>%t</type> <code>%n</code> <desc>%m</desc></message>\x22<desc>%m</desc></message>\x22" mx >output.txt
于 2013-07-11T01:33:28.837 回答