Unix Can Ant';s递归chmod在速度方面与exec竞争?

Unix Can Ant';s递归chmod在速度方面与exec竞争?,unix,ant,recursion,permissions,Unix,Ant,Recursion,Permissions,我想在我的build.xml中递归使用chmod,并借用了以下内容: 它的速度慢得难以置信,因为该目录很深,包含大量文件 这会更好更快地工作: <exec executable="chmod" dir="${basedir}/foo" failonerror="true"> <arg line="-R 0755 ." /> </exec> 使用exec有什么缺点吗?速度很重要 若有,我是否使用了chmod错误? Exec更快,因为chmod

我想在我的build.xml中递归使用chmod,并借用了以下内容:


它的速度慢得难以置信,因为该目录很深,包含大量文件

这会更好更快地工作:

<exec executable="chmod" dir="${basedir}/foo" failonerror="true">
    <arg line="-R 0755 ." />
</exec>

  • 使用
    exec
    有什么缺点吗?
    速度很重要
  • 若有,我是否使用了
    chmod
    错误?

    • Exec更快,因为chmod任务正在收集所有文件,然后chmod'ng它们。对于exec,这是一个操作。使用exec的唯一“缺点”是它将您与UNIX/Linux联系在一起。我使用引号是因为chmod任务无论如何都不会在Windows上运行,所以这是一个没有实际意义的问题


      您正确地使用了这两种方法,并且使用exec是有意义的。

      我再次阅读了手册页,我不得不说,除了从文件集中排除文件的简单语法之外,似乎没有任何有效的理由使用
      chmod
      ,但这也可以在
      exec
      中轻松解决。你会用
      chmod
      做任何事情吗?:)如果我正在更改一个文件的权限,或者(正如您所指出的)如果我想指定一个复杂的(和小的)文件集,我将使用chmod任务。如果该文件集在Ant中已被引用,则可能会发生这种情况。
      <exec executable="chmod" dir="${basedir}/foo" failonerror="true">
          <arg line="-R 0755 ." />
      </exec>