在Mac OS X,你可以通过选择一些文件,然后从上下文菜单或文件菜单中选择“压缩”创建从Finder zip存档。 不幸的是,所得到的文件不是与由创建的归档zip
命令(使用默认选项)。
这种区别的事项由苹果公司操作的至少一个服务,它不能接受的创建档案zip
命令。 不必手动创建归档是阻止我完全自动化释放我的构建过程。
如何创建一个shell脚本中的正确格式的zip压缩包?
编辑:既然早就写了这个问题,我已经想通了,关键的区别ditto
和zip
是他们如何处理符号链接:因为一个应用程序包内的代码签名包含一个符号,它需要被保存为一个链接,没有被存储为一个普通的文件。 ditto
这是否默认,但zip
不(选项-y
是必需的)。
按如下方式使用同上命令行工具:
ditto -ck --rsrc --sequesterRsrc folder file.zip
参见同上手册页为多。
我有一个Ruby脚本,使得iPhone的App Store建立适合我,但它产生的拉链不会通过iTunes Connect中得到接受。 他们如果我使用Finder的“压缩”功能被接受。
millenomi的回答差点给我,但是这命令是什么结束了工作。 iTunes Connect的接受了我的构建,以及应用程序得到批准,可以下载没有问题的,所以它的测试。
ditto -c -k --sequesterRsrc --keepParent AppName.app AppName.zip
男人同上状态:
The command: ditto -c -k --sequesterRsrc --keepParent src_directory archive.zip will create a PKZip archive similarly to the Finder's Compress functionality.
通知--keepParent
线索是在标签“自动化”。
创建Automator.app使用“创建存档”操作的操作,在命令行调用它(见“自动机”)。
文章来源: How to create a zip file in the same format as the Finder's “Compress” menu item?