如何使用命令行提取 xip 存档?
How to extract xip archive using command line?
我搜索了如何使用命令行提取 XIP 存档,但没有成功,所以我将自己的解决方案作为 bash
函数留在此处。
我找到了灵感 。
function unxip()
{
[ -z "" ] && echo "usage: unxip /path/to/archive.xip" && return
# http://newosxbook.com/src.jl?tree=listings&file=pbzx.c
PBZX="/usr/local/src/pbzx/pbzx" && [ ! -x "$PBZX" ] && echo "$PBZX not found." && return
[ ! -f "" ] && echo " not found." && return
[ -f "Content" ] || [ -f "Metadata" ] && echo "Content or Metadata already exists." && return
pkgutil --check-signature "" && xar -xf "" && "$PBZX" Content | sudo tar x --strip-components=1
rm "Content" "Metadata"
}
我们首先检查 xip
文件签名,然后使用 xar
提取其内容。然后我们使用 Jonathan Levin pbzx 正确解压 pbzx
块并将输出通过管道传输到 tar
,跳过 .
以避免覆盖当前工作目录权限。
这可以在 OS X El Capitan 上解压 Xcode8.xip
档案。
你可以 运行:
open archive.xip
open -W archive.xip
会更好,因为它会阻塞,直到存档完成打开。
你可以试试:
xip -x [path to .xip file]
使用unxip。您可以使用 Homebrew 安装它:
brew install thii/unxip/unxip
要提取 .xip
文件:
unxip path/to/.xip
在 macOS Mojave 上(不确定其他 OS 版本),导航到您要将内容扩展到的目录,然后 运行 xip --expand /path/to/xip.xip
.例如:
iMac:Applications jeff$ xip --expand /Users/jeff/Downloads/Xcode_11_Beta.xip
我搜索了如何使用命令行提取 XIP 存档,但没有成功,所以我将自己的解决方案作为 bash
函数留在此处。
我找到了灵感
function unxip()
{
[ -z "" ] && echo "usage: unxip /path/to/archive.xip" && return
# http://newosxbook.com/src.jl?tree=listings&file=pbzx.c
PBZX="/usr/local/src/pbzx/pbzx" && [ ! -x "$PBZX" ] && echo "$PBZX not found." && return
[ ! -f "" ] && echo " not found." && return
[ -f "Content" ] || [ -f "Metadata" ] && echo "Content or Metadata already exists." && return
pkgutil --check-signature "" && xar -xf "" && "$PBZX" Content | sudo tar x --strip-components=1
rm "Content" "Metadata"
}
我们首先检查 xip
文件签名,然后使用 xar
提取其内容。然后我们使用 Jonathan Levin pbzx 正确解压 pbzx
块并将输出通过管道传输到 tar
,跳过 .
以避免覆盖当前工作目录权限。
这可以在 OS X El Capitan 上解压 Xcode8.xip
档案。
你可以 运行:
open archive.xip
open -W archive.xip
会更好,因为它会阻塞,直到存档完成打开。
你可以试试:
xip -x [path to .xip file]
使用unxip。您可以使用 Homebrew 安装它:
brew install thii/unxip/unxip
要提取 .xip
文件:
unxip path/to/.xip
在 macOS Mojave 上(不确定其他 OS 版本),导航到您要将内容扩展到的目录,然后 运行 xip --expand /path/to/xip.xip
.例如:
iMac:Applications jeff$ xip --expand /Users/jeff/Downloads/Xcode_11_Beta.xip