Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can Ant's recursive chmod compete with exec in terms of speed?

I want to chmod recursively in my build.xml and borrowed the following from this post:

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

It's unbelievably slow since that directory is deep and includes a large number of files.

This works much better & faster:

<exec executable="chmod" dir="${basedir}/foo" failonerror="true">
    <arg line="-R 0755 ." />
</exec>
  • Are there any downsides of using exec? Speed is of importance.
  • If yes; am I using chmod incorrectly?
like image 243
chelmertz Avatar asked Aug 03 '11 08:08

chelmertz


1 Answers

Exec is faster because the chmod task is gathering all the files and then chmod'ng them. With exec it is one operation. The only "downside" to using exec is that it ties you to UNIX/Linux. I use quotes because the chmod task doesn't run on Windows anyway so this is a moot point.

You are using both correctly and going with exec makes sense.

like image 96
Jeanne Boyarsky Avatar answered Oct 18 '22 11:10

Jeanne Boyarsky