我有一个在Linux系统上运行的服务器,我想编辑Imagemagick的XML文件。
文件内容是:
< policymap> < policy domain =“…”rights =“..”pattern =“….”/> <政策……
您可以使用XSLT-1.0处理器和自动执行此操作 身份模板 :
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="xml" /> <!-- Identity template - in XSLT-3.0 it can be replaced by <xsl:mode on-no-match="shallow-copy"/> --> <xsl:template match="node()|@*"> <xsl:copy> <xsl:apply-templates select="node()|@*" /> </xsl:copy> </xsl:template> <xsl:template match="/policymap"> <xsl:copy> <xsl:apply-templates select="node()|@*" /> <!-- Added new line --> <policy domain="coder" rights="read | write" pattern="PDF" /> </xsl:copy> </xsl:template> </xsl:stylesheet>
它的输出是:
<?xml version="1.0"?> <policymap> <policy domain="..." rights=".." pattern="...."/> <policy domain="..." rights=".." pattern="...."/> .. .. <policy domain="coder" rights="read | write" pattern="PDF"/> </policymap>
* Ubuntu上的命令可能是
xsltproc transform.xslt source.xml
或使用 撒克逊 :
java -jar saxon9he.jar -xsl:b.xslt b.xml