1

私は次のことをしようとしています。ルートフォルダがあり、その下に4つのサブフォルダがあります。

  1. ルートの下のディレクトリが空かどうかを確認します。
  2. はいの場合、ディレクトリを削除します。

助けてくれませんか。

4

1 に答える 1

1

NAntContribdeleteの関数に加えて、NAntのタスクfileset::has-filesがそのトリックを実行します。

更新:fooこれは、次の名前のルートフォルダーと次の名前のサブフォルダーがあると仮定bar1した例ですbar4

<target name="go">
  <loadtasks assembly="C:\YourPathToNAntContrib\bin\NAnt.Contrib.Tasks.dll" />
  <property
    name="root"
    value="C:\foo" />
  <property
    name="subfolders"
    value="bar1,bar2,bar3,bar4" />
  <foreach
    item="String"
    in="${subfolders}"
    delim=","
    property="subfolder">
    <property
      name="basedir"
      value="${path::combine(root, subfolder)}" />
    <fileset
      id="files"
      basedir="${basedir}">
      <include name="**/*" />
    </fileset>
    <if test="${not fileset::has-files('files')}">
      <delete dir="${basedir}" />
    </if>
  </foreach>
</target>
于 2012-10-05T16:52:55.097 に答える