我有一行纯文本需要包装在'<'中和'/>'。
所以我可以执行此操作perl -pe 's/^/</' myfile
,然后再次使用^
替换$
无论如何使用一行代码执行此操作而不是在文件上迭代两次?
在sed或awk中可以做得更好吗?怎么样?
答案 0 :(得分:3)
perl -pe 's/^/</; s!$!/>!' myfile
您可以使用任意数量的陈述;用分号分隔它们。当正则表达式包含/
时,请使用备用分隔符。
答案 1 :(得分:2)
又一种方式(但更快:-))
perl -i -ne 'chomp;print "<$_>\n"' myfile
答案 2 :(得分:0)
perl -pe 's/^.*$/<$0\/>/mg' myfile
编辑:以上发现错误 - 请参阅下面@cjm的评论。