0

ビルドのフォーマットのような条件が STP_13_00_00_00_RC01 または STPMON_13_00_00_00_RC01 のようなものであるかどうかを入力する必要があります。perfix が STP の場合、小さなスクリプトを実行し、STP 以外の perfix の場合、スクリプトを実行して他のアクションを使用する必要はありません。私はこれを達成しますか?

ここで行っていることは、フォルダーを作成し、そのフォルダーに tar ファイルをコピーすることです。ここで、フォルダー名は STP または ACH で始まり、いくつかのパラメーターを指定してスクリプトを実行します。

   <xsl:element name="mkdir">
                <xsl:attribute name="dir">/mnt/projects/autoblds_dev_build/blds_dev_stp2build/${gbl.dist.label}</xsl:attribute>
                 </xsl:element>
            <xsl:element name="copy">
                <xsl:attribute name="file">${archive.base}/${gbl.dist.label}.tar.gz</xsl:attribute>
                <xsl:attribute name="todir">/mnt/projects/autoblds_dev_build/blds_dev_stp2build/${gbl.dist.label}/</xsl:attribute>
                <xsl:attribute name="overwrite">no</xsl:attribute>
            </xsl:element>
            <xsl:choose>
            <xsl:when test="starts-with(Node, 'STP')">
            <xsl:element name="mkdir">
            <xsl:attribute name="dir">/mnt/projects/autoblds_dev_build/blds_dev_stp2build/${soa.release.version}</xsl:attribute>
            </xsl:element>
            </xsl:when>
            <xsl:otherwise>
            <!-- alternative action -->
            </xsl:otherwise>
            </xsl:choose>
4

2 に答える 2

1

あなたの XSLT は「条件 1 または条件 2」と言っていますが、質問には 1 つの条件しか表示されません。値に特定のプレフィックスがあるかどうかをテストするには、次のようにします。

<xsl:choose>
  <xsl:when test="starts-with(Node, 'STP')">
    <!-- action -->
  </xsl:when>
  <xsl:otherwise>
    <!-- alternative action -->
  </xsl:otherwise>
</xsl:choose>
于 2013-01-28T16:44:37.307 に答える
0
<xsl:choose>
  <xsl:when test="contains(node,"STP")">
    <!-- action -->
  </xsl:when>
  <xsl:otherwise>
    <!-- alternative action -->
  </xsl:otherwise>
</xsl:choose>
于 2013-01-28T16:45:12.257 に答える