文件权限问题汇总-使用ant修改文件权限

    Ant使用修改文件权限用的是<chmod>标签,实际调用的是命令chmod。关于文件权限的内容,可参见Linux/Unix系统文件权限解析。具体的<chmod>可查看Ant手册,以下为一些例子,使用的Ant版本是1.9.7。

 perm的表达式,参照命令chmod

1、<chmod file="testFile.txt" perm="ugo+rx"/>

修改testFile.txt文件权限,为owner、group、other加上读和执行的权限。

2、<chmod dir="testDir" perm="700"/>

修改testDir目录权限,把权限改成rwx------。

3、 <chmod dir="testDir.txt" perm="775" includes="*.txt"/>
修改testDir.txt目录下的以“.txt”结尾的文件权限,不包括testDir.txt下的子目录和子文件,把权限改成rwxrwxr-x。如下:
 drwxrwxrwx testDir.txt 
     drwxrwxrwx testDir2.txt
         drwxrwxrwx testDir3.txt
         -rwxrwxrwx testFile3.txt
     -rwxrwxr-x testFile2.txt


如果includes="**/*.txt",修改testDir.txt目录下的所有以“.txt”结尾的文件权限,把权限改成rwxrwxr-x。如下:
 drwxrwxrwx testDir.txt 
     drwxrwxrwx testDir2.txt
         drwxrwxrwx testDir3.txt
         -rwxrwxr-x testFile3.txt

     -rwxrwxr-x testFile2.txt

表示所有文件,includes="**"。

4、 <chmod dir="testDir.txt" perm="775" includes="*.txt" type="dir"/>
修改testDir.txt目录下的以“.txt”结尾的目录权限,不包括testDir.txt以及testDir.txt下的子目录和子文件,把权限改成rwxrwxr-x。如下:
drwxrwxrwx testDir.txt 
     drwxrwxr-x testDir2.txt
         drwxrwxrwx testDir3.txt
         -rwxrwxrwx testFile3.txt
     -rwxrwxrwx testFile2.txt


如果includes="**/*.txt",修改testDir.txt目录下的所有以“.txt”结尾的文件权限,不包括testDir.txt,把权限改成rwxrwxr-x。如下:
 drwxrwxrwx testDir.txt 
     drwxrwxr-x testDir2.txt
         drwxrwxr-x testDir3.txt
         -rwxrwxrwx testFile3.txt
     -rwxrwxrwx testFile2.txt


表示所有目录,includes="**",包括testDir.txt。同命令chmod -R 775 testDir。

5、 <chmod dir="testDir.txt" perm="775" includes="**" excludes="*.txt"/>
修改testDir.txt目录下的不以“.txt”结尾的文件权限,不包括子目录下的子文件,把权限改成rwxrwxr-x。如下:
 drwxrwxrwx testDir.txt
     drwxrwxrwx testDir2 
     drwxrwxrwx testDir2.txt
         drwxrwxrwx testDir2.txt
         drwxrwxrwx testDir2
         -rwxrwxrwx testFile3.txt
         -rwxrwxrwx testFile3
     -rwxrwxrwx testFile2.txt
     -rwxrwxr-x testFile2


如果excludes="**/*.txt",修改testDir.txt目录下的所有不以“.txt”结尾的文件权限,把权限改成rwxrwxr-x。如下:
  drwxrwxrwx testDir.txt
     drwxrwxrwx testDir2 
     drwxrwxrwx testDir2.txt
         drwxrwxrwx testDir2.txt
         drwxrwxrwx testDir2
         -rwxrwxrwx testFile3.txt
         -rwxrwxr-x testFile3
     -rwxrwxrwx testFile2.txt
     -rwxrwxr-x testFile2


其余参考例3和例4。

6、
<chmod perm="755">
  <fileset dir="testDir.txt">
    <include name="**"/> 
    <exclude name="**/*.txt"/>
  </fileset>
</chmod>


结果参照例5,如果仅仅需要修改目录,chmod节点加上属性type="dir"。

7、
<chmod perm="755">
  <dirset dir="testDir.txt">
    <include name="**"/> 
    <exclude name="**/*.txt"/>
  </dir>
</chmod>

结果为例6的chmod节点加上属性type="dir"。
注:dirset专门用来处理目录的,type为dir还是file都不影响结果。

8、
<chmod perm="755">
  <dirset dir="testDir.txt">
  </dirset>
</chmod>

把testDir.txt以及testDir.txt下的所有目录的权限改成rwxrwxr-x。

猜你喜欢

转载自blog.csdn.net/shi2huang/article/details/79959426