How to extract xip archive using command line?

后端 未结 6 860
说谎
说谎 2021-02-04 05:55

I searched around how to extract XIP archive using command line with no luck so I am leaving my own solution, as a bash function, here.

I found my inspirati

相关标签:
6条回答
  • 2021-02-04 06:25

    You could try:

    xip -x [path to .xip file]

    0 讨论(0)
  • 2021-02-04 06:29

    open -W archive.xip will work better since it will then block until the archive has finished opening.

    0 讨论(0)
  • 2021-02-04 06:33

    On macOS Mojave (not sure about other OS versions), navigate to the directory into which you’d like to expand the contents, then run xip --expand /path/to/xip.xip. For instance:

    iMac:Applications jeff$ xip --expand /Users/jeff/Downloads/Xcode_11_Beta.xip
    
    0 讨论(0)
  • 2021-02-04 06:34

    Use unxip. You can install it with Homebrew:

    brew install thii/unxip/unxip
    

    To extract a .xip file:

    unxip path/to/.xip
    
    0 讨论(0)
  • 2021-02-04 06:44
    function unxip()
    {
        [ -z "$1" ] && 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 "$1" ] && echo "$1 not found." && return
    
        [ -f "Content" ] || [ -f "Metadata" ] && echo "Content or Metadata already exists." && return
    
        pkgutil --check-signature "$1" && xar -xf "$1" && "$PBZX" Content | sudo tar x --strip-components=1
    
        rm "Content" "Metadata"
    }
    

    We first check for xip file signature then extract its contents using xar. We then use Jonathan Levin pbzx to properly unpack pbzx chunks and pipe the output to tar, skipping . to avoid overwriting current working directory permissions.

    This does the trick to unpack Xcode8.xip archives on OS X El Capitan.

    0 讨论(0)
  • 2021-02-04 06:50

    You could just run:

    open archive.xip
    
    0 讨论(0)
提交回复
热议问题