【问题标题】:View package content created with productbuild查看使用 productbuild 创建的包内容
【发布时间】:2015-04-29 10:38:56
【问题描述】:

我使用 productbuild 实用程序创建了一个 pkg 文件,我想查看它的内容。我该怎么做?

我在 MacOS 10.9.5 下。

【问题讨论】:

    标签: macos productbuild


    【解决方案1】:

    您可以使用pkgutil 将您的包解压缩到临时目录中。

    pkgutil --expand pkg-path dir-path
    
    Expand the flat package at pkg-path into a new directory specified by dir-path.
    

    CharlesSoft 还提供了一个很好的第三方工具Pacifist。无需解压即可查看包内容。

    更新

    pkg 存档(即xar 存档)中,您可能会遇到以下文件:

    • Bom:Mac OS X 物料清单 (BOM) 文件

    Mac OS X 安装程序使用文件系统“材料清单”来确定要安装、删除或升级哪些文件。物料清单 bom 包含目录中的所有文件,以及有关每个文件的一些信息。文件信息包括:文件的 UNIX 权限、所有者和组、大小、上次修改时间等。 还包括每个文件的校验和以及有关硬链接的信息。 [man bom]

    您可以使用lsbom 命令列出bom 文件的内容。并使用mkbom 创建文件。

    • PackageInfo:XML 文档文本

    xml 文件包含有关软件包的一般信息。

    • Payload:gzip 压缩数据,来自 Unix

    这是一个 gzip 压缩的 cpio 存档。您可以使用tar 命令将其内容提取到当前目录:

    $ tar -xf Payload
    

    或者解压到指定目录dir-path:

    $ tar -C dir-path -xf Payload
    

    您可以选择仅列出Payload 存档的内容:

    $ tar -tf Payload
    

    您应该能够从 dir-path 重新创建存档:

    $ tar --format cpio -czf Payload dir-path
    

    【讨论】:

    • 当我解压它时,我的文件夹 com.mydomain.mypackage.pkg 包含三个文件:Bom、PackInfo 和 Payload。如何提取Payload的内容?
    • 您的回答令人印象深刻!谢谢;-)
    猜你喜欢
    • 2012-01-01
    • 2011-08-29
    • 2017-11-09
    • 1970-01-01
    • 2017-08-17
    • 1970-01-01
    • 1970-01-01
    • 2011-09-06
    • 1970-01-01
    相关资源
    最近更新 更多