首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从命令行将.xip文件解压缩到文件夹中?

从命令行将.xip文件解压缩到文件夹中?
EN

Stack Overflow用户
提问于 2017-02-13 06:05:50
回答 6查看 37.9K关注 0票数 37

苹果偶尔会使用专有的XIP文件格式,特别是在分发Xcode版本时。这是一个模拟拉链,但是签名,允许它验证在接收系统。当打开一个XIP文件时(双击),Archive将展开它,但前提是数字签名是完整的。

有人知道如何从终端命令行提取XIP文件到特定文件夹吗?如果签名无效,有任何方法解压缩这种类型的文件吗?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2018-06-13 11:06:52

也许试一试:

xip -x [path to .xip file]

这将把存档解压缩到当前的工作目录中。

至于提取到特定目录,没有明确的选项,但xip -x将提取到当前工作目录。因此,要将文件解压缩到何处,cd就应该工作;如果您特别需要自动化该文件,则需要编写一个脚本,其结果是:

代码语言:javascript
复制
#!/bin/sh

xipfile="$(cd $(dirname "$1"); pwd -P)/$(basename "$1")" # a portable "realpath"

cd "$2"
xip -x "$xipfile"

我觉得应该这么做吗?

票数 49
EN

Stack Overflow用户

发布于 2017-02-13 06:56:06

我建议简单地将存档解压缩到您想要的文件夹中,尝试以下操作:

代码语言:javascript
复制
xar -xf file.xip -C /path/to/target

(和/或)

代码语言:javascript
复制
tar -zxvf file.xip -C /path/to/target

xartar命令以原始格式提取.xip“内容”和“元数据”。

使用pbzx流解析器,您需要提取“内容”,这是一个lzma压缩的有效载荷;格式类似于包安装程序中的格式(例如。.pkg)。您可以使用从这里编译pbzx源代码下载已编译的二进制文件并将其安装到/usr/local/bin,然后调用pbzx命令:

代码语言:javascript
复制
pbzx -n Content | cpio -i

在命令解析完内容之后,您应该得到.xip存档中任何内容的原始形式。

有用/附加信息

代码语言:javascript
复制
$ pkgutil --check-signature file.xip 

Xcode_9_beta_2.xip返回:

代码语言:javascript
复制
Package "Xcode_9_beta_2.xip":
   Status: signed Apple Software
   Certificate Chain:
    1. Software Update
       SHA1 fingerprint: 1E 34 E3 91 C6 44 37 DD 24 BE 57 B1 66 7B 2F DA 09 76 E1 FD
       -----------------------------------------------------------------------------
    2. Apple Software Update Certification Authority
       SHA1 fingerprint: FA 02 79 0F CE 9D 93 00 89 C8 C2 51 0B BC 50 B4 85 8E 6F BF
       -----------------------------------------------------------------------------
    3. Apple Root CA
       SHA1 fingerprint: 61 1E 5B 66 2C 59 3A 08 FF 58 D1 4A E2 24 52 D1 98 DF 6C 60

Notes

重要:从macOS will开始,只有苹果签署的XIP档案将被扩展。使用XIP存档的开发人员将需要使用签名的安装程序包或磁盘映像。

OS手册页: xip

票数 24
EN

Stack Overflow用户

发布于 2018-02-02 06:39:33

您可以打开归档实用程序本身,进入Preferences并设置一个特定的目标文件夹,然后双击该文件。这样,您就可以将其扩展到特定的目的地。;-)

票数 21
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42197588

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档