गनज़िप और टार एक्सफ़ किन परिस्थितियों में काम करता है लेकिन टार ज़ज़फ़ विफल हो जाता है?


9

बिंदु को स्पष्ट करने के लिए: मैंने कंपनी की वेबसाइट से LEDA लाइब्रेरी डाउनलोड की है । इस पर tar -xzf का उपयोग करना विफल रहता है:

$ tar -xzf LEDA-6.3-free-fedora-core-8-64-g++-4.1.2-mt.tar.gz 
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors

हालांकि, टार्ज़-एक्सएफ के बाद गनज़िप ठीक काम करता है:

$ gunzip LEDA-6.3-free-fedora-core-8-64-g++-4.1.2-mt.tar.gz
$ tar -xf LEDA-6.3-free-fedora-core-8-64-g++-4.1.2-mt.tar
# no error

क्या कोई मुझे बता सकता है कि ऐसा क्यों हो सकता है? - मैं चाहता हूँ कि मानक tarकमांड हर समय काम करे।


क्या ऑपरेटिंग सिस्टम? IIRC में यूनिक्स होते हैं tarजो लागू नहीं होते हैं -z
बनुआंगिन

@ user1129682 कंपनी की साइट से, ऐसा लगता है कि इसमें केवल लिनक्स और विन के विकल्प हैं ...
19 दिसंबर को MattDMo

यदि आपका टार z का समर्थन नहीं करता है, तो इसके बजाय एक पाइप का उपयोग करें: gunzip < archive.tar.gz | tar -xहर जगह काम करना चाहिए।
19:30 पर फ्रॉस्ट्सचुट्ज़

का आपके प्रति तो tarविसंपीड़न gunzip का समर्थन नहीं करता, आप के बजाय निम्न कर सकते हैं: gunzip -c $file | tar -x। यह एक शेल फ़ंक्शन में लपेटने के लिए सामान्य है।

1
मैंने अभी उस संग्रह को डाउनलोड किया है, और वास्तव tar xzfमें एक त्रुटि देता है, डेबियन जीएनयू / लिनक्स (जो निश्चित रूप से गटर का उपयोग करता है) पर। अजीब।
derobert

जवाबों:


12

ऐसा प्रतीत होता है कि ऐसा हुआ है कि उन्होंने संग्रह को दोगुना कर दिया है ।

यदि आप fileअपनी गनज़िप फाइल पर चलते हैं, तो आपको इसका अभी भी एक गज़िप संग्रह मिलेगा। और यदि आप इसे .gz के लिए फिर से नाम देते हैं, तो आप इसे फिर से गनज़िप कर सकते हैं।

ऐसा लगता है कि हाल ही में ग्नू टार स्वचालित रूप से -zविकल्प जोड़ देगा , बशर्ते इनपुट एक फाइल हो। तो, इसीलिए यह -zविकल्प के बिना काम करता है, जब आप पहले ही gunzipएक बार चला लेते हैं , तो यह स्वचालित रूप से जुड़ जाता है।

यह व्यवहार जानकारी पृष्ठ से, प्रलेखित है:

"संपीड़ित संग्रह पढ़ना और भी सरल है: आपको किसी अतिरिक्त विकल्प को निर्दिष्ट करने की आवश्यकता नहीं है क्योंकि GNU` टार 'अपने प्रारूप को स्वचालित रूप से पहचानता है। [...] प्रारूप मान्यता एल्गोरिथ्म "हस्ताक्षर", एक विशेष बाइट अनुक्रमों पर आधारित है। फ़ाइल की शुरुआत, जो कि कुछ संपीड़न प्रारूपों के लिए विशिष्ट है। "

यह Arch8.1.1 से "कम्प्रेस्ड आर्काइव्स बनाना और पढ़ना है।"


बहुत अच्छी तरह से देखा! गनज़िप और टार के सभी संयोजनों की पुष्टि की।
माइकल शुबर्ट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.