Linux 上的 Zip 命令包括整个文件夹结构

Zip command on Linux includes whole folder structure

我目前正在使用 Bamboo 对我正在从事的项目进行持续集成。我们正在使用 ANT 脚本来进行构建自动化,作为最后的任务,我们正在使用 linux Zip 命令来创建一个发布 zip 文件。问题是 zip 文件包含通向发布文件夹的整个文件夹链,这不是我希望包含的内容。

目前我正在使用以下蚂蚁调用:

<exec executable="/usr/bin/zip" 
                  dir="${basedir}/tmp"
                  failonerror="true">
            <arg line="-r /var/...more directories.../repo/master/ProjectBuild/tmp/release.zip /var/...more directories.../repo/master/ProjectBuild/tmp/release -P PASSWORD_GOES_HERE" />
</exec>

这会使用正确的密码创建正确的 .zip 文件,但里面没有 /release 文件夹的文件夹和内容,我有整个路径 /var/...更多目录.../master.. 。/发布/。我尝试使用 -j 参数但失败了,因为在发布文件夹内的不同子文件夹中有两个同名文件。

有什么办法可以只在 .zip 文件中包含发布文件夹内容?

你试过了吗:

<exec executable="/usr/bin/zip" 
                  dir="/var/...more directories.../repo/master/ProjectBuild/tmp/"
                  failonerror="true">
    <arg line="-r /var/...more directories.../repo/master/ProjectBuild/tmp/release.zip release -P PASSWORD_GOES_HERE" />
</exec>

如果不想看到发布的顶层目录,可以试试:

<exec executable="/usr/bin/zip" 
                  dir="/var/...more directories.../repo/master/ProjectBuild/tmp/release"
                  failonerror="true">
    <arg line="-r /var/...more directories.../repo/master/ProjectBuild/tmp/release.zip . -P PASSWORD_GOES_HERE" />
</exec>