我正在尝试使用xmlstarlet格式化xml文件,但我不想创建新的xml文件。
我试过这个
xmlstarlet fo --inplace --indent-tab --omit-decl project_00.xml
但参数--inplace
不允许使用fo
(格式)命令。
有谁知道我是怎么做到的?
答案 0 :(得分:2)
fo子命令总是写入stdout,因此你必须修补xmlstarlet。
否则
TMP_XML=$(mktemp)
xmlstarlet fo --indent-tab --omit-decl project_00.xml > "$TMP_XML"
mv "$TMP_XML" project_00.xml
答案 1 :(得分:1)
你可以用这个衬里
xmlstarlet ed -L -O project_00.xml
参考 http://xmlstar.sourceforge.net/doc/UG/xmlstarlet-ug.html#idm47077139594320