आँकड़ों और विज्ञापन के लिए कुकीज़
हम आँकड़ों और विज्ञापन के लिए कुकीज़ इस्तेमाल करते हैं, दोनों Google को जाती हैं। मना करने से आपको दिखने वाली किसी चीज़ में कोई फ़र्क़ नहीं पड़ता।निजता पेज पढ़ें
यहाँ आप TAR को ZIP में बदलते हैं, मुफ़्त और बिना खाते के: फ़ाइल ऊपर छोड़िए और कुछ ही सेकंड में नतीजा डाउनलोड के लिए तैयार मिलेगा। फ़ाइल एन्क्रिप्टेड होकर हमारे सर्वर तक जाती है, वहाँ बदली जाती है और काम पूरा होते ही मिटा दी जाती है।
एक बार में 100 फ़ाइलें। फ़ॉर्मेट अलग-अलग हों तो भी चलेगा।
ये एक के बाद एक बदलती हैं और साथ में एक ZIP बनकर उतरती हैं।
TAR से ZIP
बिना दबाई गई टारबॉल लगभग हमेशा किसी मशीन का आउटपुट होती है। docker save एक लिखता है। बैकअप औज़ार और होस्टिंग पैनल इसे बीच का क़दम मानकर लिखते हैं। पाइपलाइन इसे किसी अगले चरण को सौंपने के लिए बनाती है।
इसलिए अंदर उम्मीद कीजिए बहुत सारी फ़ाइलें, मशीन-जनित नाम, गहरे पथ — किसी इंसान के इसे खोलने का कोई ख़याल नहीं। यह बदलाव अक्सर वह पल है जब किसी मशीन का आउटपुट किसी इंसान की फ़ाइल बनता है।
यहाँ के ज़्यादातर आर्काइव बदलाव एक compressor को दूसरे से बदलते हैं, और आकार थोड़ा इधर-उधर होता है। यह बदलाव शून्य से शुरू होता है — रजिस्ट्री में TAR का दबाव "कुछ नहीं" दर्ज है।
इसलिए उसी सामग्री की ZIP वहाँ दबी होती है जहाँ TAR नहीं थी, और स्रोत-कोड, JSON, लॉग जैसी सामग्री पर फ़र्क़ बड़ा, मामूली नहीं। यह वह दुर्लभ बदलाव है जहाँ अनुकूलता और आकार दोनों एक ही दिशा में इशारा करते हैं।
TAR तय 512-बाइट ब्लॉक की एक धारा है और कुछ नहीं। हर सदस्य को एक हेडर ब्लॉक और अगली 512 की सीमा तक भराई मिलती है। कोई इंडेक्स कहीं नहीं।
हज़ारों छोटी फ़ाइलों वाले आर्काइव पर यह भराई अकेले भी एक बड़ा हिस्सा हो सकती है। ZIP में भी हर सदस्य का ख़र्च है, पर वह दसियों बाइट का है, आधे किलोबाइट तक गोल किया हुआ नहीं।
ZIP आख़िर में एक central directory लिखती है जो हर सदस्य और उसकी शुरुआत बताती है। इसलिए कोई प्रोग्राम बड़ी आर्काइव की सामग्री बिना कुछ खोले पढ़ सकता है।
TAR के पास कोई इंडेक्स नहीं, इसलिए सूची बनाना मतलब शुरुआत से पढ़ना — यह डिज़ाइन 1979 में टेप ड्राइव के लिए बनी थी, जहाँ पीछे seek करना संभव नहीं था।
TAR हर सदस्य के लिए मोड, उपयोगकर्ता और समूह रखती है, और यही वजह है कि deployment काम इसे इस्तेमाल करता है। ZIP में इनमें से कुछ भी डेस्कटॉप औज़ारों के लायक़ जगह नहीं रखता, इसलिए यह बदलाव में नहीं आता।
इसे सोचने लायक़ है, ख़ासकर build या container export से आई tar के लिए, जो किसी executable बिट पर निर्भर हो सकती है।
ऊपर बताई गई आकार-बचत अपने-आप नहीं होती। अगर टारबॉल तस्वीरें, वीडियो या पहले से दबी फ़ाइलें रखती है, तो DEFLATE को ढूँढने को लगभग कुछ नहीं मिलता।
यह मान लेना ग़लत होगा कि यह बदलाव किसी ट्रांसफ़र की समस्या ख़ुद-ब-ख़ुद सुलझा देगा। JPEG की 25 मेगाबाइट की tar 6 मेगाबाइट की ZIP नहीं बनेगी।
यह जोड़ी हमारे converter पर चलती है, ब्राउज़र में नहीं। TAR एन्क्रिप्टेड कनेक्शन से जाती है, 7-Zip से खोली जाती है, फिर उसी डायरेक्टरी के अंदर से ZIP बनकर वापस आती है। हर अस्थायी फ़ाइल काम पूरा होते ही मिटा दी जाती है।
सीमा है मुफ़्त दर्जे पर 25 मेगाबाइट प्रति अपलोड और हर काम पर साठ सेकंड की सख़्त सीमा, और 2 गीगाबाइट से ज़्यादा खुलने का दावा करने वाली आर्काइव सीधे मना कर दी जाती है।
अगर मंज़िल कोई Linux मशीन है, तो ZIP में बदलना ऐसी समस्या सुलझाता है जो आपके पास कभी थी ही नहीं। सही तरीक़ा है TAR को रखकर उसे ख़ुद दबाना — GZ में बदलना वही .tar.gz देता है जिसे हर Unix औज़ार एक कमान में खोल लेता है।
ZIP तब चुनिए जब Windows या macOS पर किसी को फ़ाइल खोलनी है। फ़र्क़ तकनीकी पसंद का नहीं — यह इस बात का है कि दूसरे छोर पर कौन है।
ZIP को एक जाँच मिलती है जो टारबॉल के पास कभी नहीं थी। TAR का chksum केवल हेडर ब्लॉक ढकता है, इसलिए ख़राब सदस्य चुपचाप ग़लत बाइट्स के साथ निकल सकता है; ZIP हर सदस्य के लिए CRC-32 रखती है और ख़राब को नाम से बताती है।
हर सदस्य बिना दोबारा एनकोड हुए कॉपी होता है — कुछ खोने का कोई कारण ही नहीं। सदस्य-गिनती और पथ मिलाकर जाँच लीजिए, यह तीस सेकंड का काम है।
docker save से बनी tar अच्छी मिसाल है — इसमें layer blob, manifest और लंबे hexadecimal नामों वाली JSON मेटाडेटा है, कोई इंसान के पढ़ने के लिए नहीं। ZIP में बदलना बख़ूबी काम करता है, पर image वापस नहीं देता।
image दोबारा बनाने के लिए tar वापस किसी container runtime को चाहिए, ZIP नहीं। अगर आर्काइव किसी बैकअप औज़ार से बनी है जो अपनी इंडेक्स फ़ाइल रखती है, तो असली टारबॉल संभालकर रखना बेहतर है।
| TAR | ZIP | |
|---|---|---|
| पूरा नाम | TAR आर्काइव | ZIP आर्काइव |
| फ़ाइल एक्सटेंशन | .tar | .zip |
| मीडिया टाइप | application/x-tar | application/zip |
| कंप्रेशन | बिना कंप्रेशन | बिना नुक़सान — कुछ छोड़ा नहीं जाता |
| पहली बार प्रकाशित | 1979 | 1989 |
| प्रकाशक | — | PKWARE |
| विनिर्देश | POSIX.1-2001 ustar | APPNOTE.TXT |
| लाइसेंस | खुला मानक | खुला मानक |
| आज की स्थिति | मौजूदा | मौजूदा |
| ब्राउज़र में खुलता है | कोई ब्राउज़र नहीं | कोई ब्राउज़र नहीं |
| इसकी जगह विचारणीय | GZ | 7Z |
कुछ नहीं खोता। TAR और ZIP — दोनों अपनी सामग्री बिना नुक़सान सँभालते हैं: यह कन्वर्ज़न पैकिंग बदलता है, गुणवत्ता नहीं, और आप इसे दोहरा सकते हैं बिना इस डर के कि नुक़सान जमा होता जाएगा।
7-Zip TAR और ZIP — दोनों पढ़ लेता है, इसलिए आप नतीजे को असली फ़ाइल के बग़ल में रखकर देख सकते हैं, बिना दूसरा प्रोग्राम खोले।
ZIP उन्हीं सैंपल को क़रीब आधी जगह में बाँध देता है। कुछ जाता नहीं — खोलने पर TAR फ़ाइल बिट-दर-बिट वापस मिलती है — और इसी से यह उस हर चीज़ के लिए बेहतर जगह बन जाता है जिसे आप सँभालकर रखना चाहते हैं।
TAR 1979 में आया। यह POSIX.1-2001 ustar में तय किया गया है, और अगर फ़ाइल को उस औज़ार से ज़्यादा जीना है जिसने उसे लिखा, तो यह बात क़ीमती है।
ZIP PKWARE का है और 1989 से चला आ रहा है, और APPNOTE.TXT में तय किया गया है। Windows Explorer, Finder और 7-Zip इस फ़ॉर्मेट को पढ़ लेते है।
हाँ: इस कन्वर्ज़न को ऐसा सॉफ़्टवेयर चाहिए जो ब्राउज़र में चलता ही नहीं। फ़ाइल एन्क्रिप्टेड होकर हमारे सर्वर तक जाती है, काम पूरा होते ही मिटा दी जाती है, और नतीजा 60 मिनट बाद। वहाँ यह काम 7-Zip करता है, वह आर्काइवर, अपने कमांड-लाइन रूप में।
हाँ, 25 MB तक की फ़ाइलों के लिए रोज़ 100 कन्वर्ज़न तक। यह एक सीमा इसलिए है कि यह कन्वर्ज़न ऐसे सर्वर पर चलता है जिसका ख़र्च हम उठाते हैं। इसके अलावा यहाँ कुछ भी सीमित नहीं है, और वॉटरमार्क किसी भी हाल में नहीं लगता। यह सीमा इसलिए है कि 7-Zip को चलने के लिए हमारी कोई मशीन चाहिए।
नहीं। ZIP वही सामग्री बिना कुछ फेंके सँभालता है: नतीजा गुणवत्ता में असली फ़ाइल जैसा ही होता है। फ़ाइलें बाइट-दर-बाइट वैसी ही निकलती हैं। जो नहीं बचता वह है वह सब जो कंटेनर उनके *बारे में* जानता था, न कि जो उसके *भीतर* था — कोई पासवर्ड, और कुछ फ़ॉर्मेट में असली अनुमतियाँ और तारीख़ें।
ZIP उन्हीं सैंपल को क़रीब आधी जगह में बाँध देता है। कुछ जाता नहीं — खोलने पर TAR फ़ाइल बिट-दर-बिट वापस मिलती है — और इसी से यह उस हर चीज़ के लिए बेहतर जगह बन जाता है जिसे आप सँभालकर रखना चाहते हैं।
कुछ नहीं खोता। TAR और ZIP — दोनों अपनी सामग्री बिना नुक़सान सँभालते हैं: यह कन्वर्ज़न पैकिंग बदलता है, गुणवत्ता नहीं, और आप इसे दोहरा सकते हैं बिना इस डर के कि नुक़सान जमा होता जाएगा।
इस पेज पर TAR और ZIP के बारे में जो कहा गया है, वह जाँचा जा सकता है, और ये रहे वे दस्तावेज़ जो उसे तय करते हैं।