2016-11-04 8 views
5

मैंने कोई भाग्य के साथ कमांड लाइन का उपयोग करके XIP संग्रह को निकालने के तरीके के बारे में खोज की है, इसलिए मैं bash फ़ंक्शन के रूप में अपना स्वयं का समाधान छोड़ रहा हूं।आदेश पंक्ति का उपयोग कर xip संग्रह निकालने के लिए कैसे?

मुझे अपनी प्रेरणा here मिली।

उत्तर

1
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" 
} 

हम पहले xip फ़ाइल हस्ताक्षर के लिए जाँच तो xar का उपयोग कर उसकी सामग्री को निकालें। हम वर्तमान में काम करने वाली निर्देशिका अनुमतियों को ओवरराइट करने से बचने के लिए . को छोड़कर, को छोड़कर पर आउटपुट tar पर आउटपुट को ठीक से अनपैक करने के लिए जोनाथन लेविन pbzx का उपयोग करें।

यह ओएस एक्स एल कैपिटन पर Xcode8.xip अभिलेखागार को अनपैक करने की चाल है।

+0

यह सीआई बिंदु दृश्य से अवांछनीय है क्योंकि इसे पहले से ही सिस्टम पर स्थापित मूल उपकरण (/ सिस्टम/लाइब्रेरी/कोर सर्विसेज/एप्लीकेशन/आर्काइव यूटिलिटी.एप/कंटेंट्स/मैकोज़/आर्चिव यूटिलिटी) स्थापित करने पर तीसरे पक्ष के ऐप को स्थापित करने की आवश्यकता होती है। काम करो – ablarg

1

तुम बस चला सकते हैं:

open archive.xip 
2

open -W archive.xip बेहतर काम करेंगे, क्योंकि यह तब तक संग्रह उद्घाटन समाप्त हो गया है रोकेंगे।

संबंधित मुद्दे

 संबंधित मुद्दे