我如何可以使用的蚂蚁焦油任务和保护的文件的权限?
-
19-09-2019 - |
题
当然它可以通过使用 exec task
, 但是我的问题是:
它是可能做到这一使用中的焦油的任务?
解决方案
我不认为有一种方法可以保留现有的权限,每该注意从 复制任务:
Unix注意: 权限文件是不保留当复制文件;他们最终与默认UMASK的权限,而不是。这是由于缺乏任何手段查询或设置文件的权限在目前的Java运行时。如果你需要一个准许保留副本功能,使用
<exec executable="cp" ... >
代替。
但是的 焦油任务 可以采取的一个或更多 tarfileset
元素。的 tarfileset
可以被定义 filemode
和/或 dirmode
属于指定的unix权限。如果你指定的包括多个匹配的只有这些文件获得每组所需的权限,本文件在设置将包括与这些权限。
其他提示
这缺少权限使蚂蚁焦油任务几乎无用我。有没有办法做到这一点,而不与 EXEC任务执行操作系统焦油
<exec executable="tar" output="/dev/null" os="Linux">
<arg value="--exclude-from=files_to_exclude.txt"/>
<arg value="-cvz"/>
<arg value="--file=${file.tar}"/>
<arg value="."/>
</exec>
有几乎人类已知的所有操作系统GNU焦油二进制文件。把他们中的一个在你的版本控制系统,并使用它取决于你的操作系统。是的,蚂蚁将需要每次运行时到餐桌的过程。
使用tarfileset工作为我们的项目。下面是万一有人需要它工作的例子:
<tar destfile="${dist}/${module.name}-${version}.tar">
<tarfileset dir="${package.dir}" filemode="550" includesfile="${home.dir}/includelist.txt">
<include name="*.sh"/>
</tarfileset>
</tar>
在这个例子中,includelist.txt用来告诉哪些文件中的焦油文件以包括。所有带* .SH扩展名的文件将具有读取和对用户和组执行权限(550)。
希望这可以帮助别人。
不隶属于 StackOverflow