Ant Chmod命令详解

转载自http://hi.baidu.com/heerit/blog/item/b458d0d66126f02d06088b4b.html

4.4   Chmod Task:改变Linux/UNIX系统的文件权限

在UNIX和Linux系统下要改变文件的权限,可以使用chmod的shell命令。例 如:chmod 777 abc.txt。设置abc.txt文件的权限为“所有人有对文件操作的所有权限”。在Ant工具中可以通过Chmod任务方便地实现这些功能。在 Chmod任务中可以引用FileSet和DirSet类型指定的文件集合和目录集合。

4.4.1   Chmod Task属性及功能

Chmod任务包括如下属性:

(1)file:用于指定即将被改变权限的文件名称。

(2)dir:用于指定这个目录下的所有文件的权限将要被改变。在Chmod任务中dir属性和file属性两者必须选择其中一个。

(3)perm:用于指定文件的新权限。

(4)includes:用于指定一个或多个文件的匹配模式,只有符合这些模式的文件的权限才会被改变。可用逗号符或空格符进行分隔。

(5)excludes:与includes属性的作用正好相反,用于指定一个或多个文件匹配模式,只有不符合这些模式的文件的权限才会被改变。可用逗号符或空格符进行分隔。

(6)defaultexcludes:用于指定是否不包括Ant工具默认不包含的文件匹配模式。可取值为yes或no。忽略此属性时代表不包含默认的不包含的文件模式。

Ant工具默认不包含的文件模式有:**#*#,**/.#*,** /%*%,**/._*, **/CVS,**/CVS.cvsignore,**/SCCS,**/SCCSvssver.scc,** /.svn,**/.svn.DS_Store。

(7)parallel:用于指定是否为每个包含的文件独立执行Chmod命令,默认为true。

(8)type:可取值为file、dir或both。取值file表示只改变文件的权限;若取值dir表示只改变目录的权限;若取值both则代表改变文件和目录两者的权限。

(9)maxparallel:用于指定一次执行Chmod命令的最大值。设为<=0代表不限制,默认为不限制。

(10)verbose:用于指定在执行命令后是否输出这个命令的执行信息。默认为false不输出。

4.4.2   通过Ant改变Linux/UNIX文件和目录权限的例子

在Linux和UNIX下通常通过Chmod命令来改变文件或目录的权限,Ant工具的Chmod任务也能实现同样的功能。例如,改变start.sh文件的权限让所有人对此文件具有读和执行的权限。

<chmod file="${dist}/start.sh" perm="ugo+rx"/>

所有用户对${dist}/start.sh文件都具有读和执行的权限。如果只有文件的所有者才具有读、写和执行权限,那么可以编写以下程序:

<chmod file="${dist}/start.sh" perm="o+rx"/>

当然也可以用数据来表示权限,上面的程序可改为:

<chmod file="${dist}/start.sh" perm="700"/> <!--   //与上面程序作用相同,

文件的所有者才具有读、写和执行的权限   -->

当然也可以通过FileSet和DirSet类型实现更复杂的功能,例如:

<chmod perm="go-rwx" type="file">

   <fileset dir="/web">

     <include name="***.old"/>

   </fileset>

   <dirset dir="/web">

     <include name="**/private_*"/>

   </dirset>

</chmod>

这个例子的作用是让不是文件的所有者可以访问cgi脚本。文件的权限将会改变的文件有:所有/web目录下的.cgi和.old文件,所有以private_*开头的文件或目录名以private_*开头的目录下的文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值