1

我有一行纯文本,需要用“<”和“/>”包装。

所以我可以这样做perl -pe 's/^/</' myfile,然后再做一次,^$

无论如何用一行代码而不是在文件上迭代两次来做到这一点?

它可以在 sed 或 awk 中做得更好吗?如何 ?

4

3 回答 3

3
perl -pe 's/^/</; s!$!/>!' myfile

您可以使用任意数量的语句;只需用分号分隔它们。当您的正则表达式包含 a 时,请使用备用分隔符/以清楚起见。

于 2013-08-05T17:17:41.867 回答
2

另一种方式(但更快:-))

   perl -i -ne 'chomp;print "<$_>\n"' myfile
于 2013-08-05T22:56:16.320 回答
0
perl -pe 's/^.*$/<$0\/>/mg' myfile

编辑:以上发现不正确 - 请参阅下面@cjm 的评论。

于 2013-08-05T17:10:37.557 回答