2011-08-03 16 views
10

私は自分のbuild.xmlに再帰的にchmodしたいとthis postから次を借り:Antの再帰的なchmodは、速度に関してexecと競合することはできますか?

<chmod file="${basedir}/foo/**" perm="755" type="both"/> 

そのディレクトリが深いと多数のファイルが含まれているのでそれは信じられないほど遅いです。

これは非常に良い作品に高速&:

<exec executable="chmod" dir="${basedir}/foo" failonerror="true"> 
    <arg line="-R 0755 ." /> 
</exec> 
  • execを使用してのいずれかの欠点はありますか?
    スピードが重要です。
  • 「はい」の場合。 私はchmodを間違って使用していますか?

答えて

7

chmodタスクがすべてのファイルを収集してからそれらをchmod'ngするので、Execは高速です。 execでは1つの操作です。 execを使用することの唯一の「欠点」は、UNIX/Linuxとのつながりです。私は引用符を使っています。なぜなら、chmodタスクはWindows上では実行されないためですが、これは問題です。

正しく使用していて、execを実行すると意味があります。

+0

マニュアルページをもう一度読んで、ファイルセットからファイルを除外するための簡単な構文とは別に、 'chmod'を使用する正当な理由はないようですが、簡単に解決できます'exec'でも同様です。何でも 'chmod'を使いますか? :) – chelmertz

+0

私は複雑な(と小さなファイルセット)を指定したい場合、私は1つのファイルまたは(あなたが指摘したように)アクセス許可を変更していた場合、私はchmodタスクを使用します。おそらくそのファイルセットが既にAntで何かのために参照されていたならば。 –

関連する問題