我有一个要替换字符的文件,但我也想替换每个字符实例,并在替换字符串中用数字进行迭代。
SomeFile.txt
[H
A
[H
B
[H
C
我想将“ [H”替换为“ </pre></div><div id=cat$n><pre>
”,其中$ n是替换次数的插入符。因此,第一个替换将是1、2、3、4,n ++,依此类推。
有办法做到这一点sed
吗?
Perl来解救!
perl -pe 'BEGIN { $n = 1 } s%\[H%</pre></div><div id=cat$n><pre>% && $n++' filename
-p
逐行读取输入并打印任何代码BEGIN { ... }
在输入程序之前运行s%pattern%replacement%
替换pattern
为replacement
。\[
需要反斜杠,因为[
在正则表达式中很特殊&& $n++
如果替换成功,则返回true,因此运行下一个命令:并增加counter $n
。本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句