使用命令行格式化XML

时间:2015-12-09 15:14:37

标签: html xml bash format tidy

我有一个html文本文件,我想格式化它,以便段落总是在同一行,例如。

<context:component-scan base-package="com.example.service.workflow" />

而不是

<p>paragraph info here</p>

是否有工具可以让我这样做

2 个答案:

答案 0 :(得分:0)

您可以使用sed

 cat test.html |sed ':a;N;$!ba;s/\n/ /g' |sed 's/<\/p> /<\/p>\n/g'

首次运行时,删除所有换行符,然后在段落标记

之后添加

目前尚不清楚但是有效吗

答案 1 :(得分:0)

虽然需求段落始终在同一行只需将整个文件连接到一行,但这种解决方案不那么激进了:

perl -pe 'if (/<p>/../<\/p>/) { s/\n/ / unless /<\/p>/ }' test.html