首页 > 代码库 > 格式化xml

格式化xml

xmllint是一个很方便的处理及验证xml的工具,linux下要安装libxml2才能使用这个命令。

但是 xmllint -format filename 格式化输出是在标准输出,而不是文件本身。(不能简单的使用重定向)

所以我写了个bash 函数,放在 /etc/bashrc里

function xmlformat(){    for filename in $@    do        if [ -f $filename ]        then            cp -f $filename .${filename}\~            xmllint -format $filename > /tmp/xmlformat.$$.temp            cat /tmp/xmlformat.$$.temp > $filename        fi        if [ $filename = - ]        then            xmllint -format -        fi    done    rm /tmp/xmlformat.$$.temp -f &> /dev/null}

 

支持批量/通配符匹配/从标准输入中读取数据用 xmlformat -

 

格式化xml