आपकी फ़ाइलों को सिकोड़ने के कई तरीके और कई उपकरण हैं, या तो उनके द्वारा लिए जाने वाले स्थान को कम करने के लिए या उन्हें एक पैकेज के रूप में किसी संपर्क को भेजने के लिए। इनमें से, 7-Zip अपने शानदार प्रदर्शन और शून्य लागत के साथ कम्प्रेशन स्तरों के अनूठे संयोजन के कारण अधिकांश उपयोगकर्ताओं के लिए शीर्ष स्थान पर पहुंच गया है।
इस प्रारूप में कम्प्रेशन के सभी रूप हमारे द्वारा यहां देखे जाने वाले दृष्टिकोण की तुलना में अधिक जटिल हैं। कम से कम उन अधिकांश उपयोगकर्ताओं के लिए जो एक फोल्डर और उसके सब-फोल्डर्स में सब कुछ पैक करने के लिए कम्प्रेशन का उपयोग करते हैं।
तो आइए देखें कि हम बैश के एलियास समर्थन को 7z के कमांड-लाइन संस्करण के साथ कैसे जोड़ सकते हैं ताकि एक सरल कमांड के साथ अपनी फ़ाइलों के पैकेज बना सकें।
p7zip इंस्टॉल करें
सबसे लोकप्रिय कम्प्रेशन टूल के रूप में, 7-Zip आपके लिनक्स डिस्ट्रीब्यूशन में पहले से इंस्टॉल होने की सबसे अधिक संभावना है। इसे टेस्ट करने के लिए, टर्मिनल में "7z" कमांड आज़माएं। यदि इंस्टॉल नहीं है, तो आप इसे उबंटू/डेबियन-आधारित डिस्ट्रीब्यूशन में इस कमांड से इंस्टॉल कर सकते हैं:
sudo apt-get install p7zip-full
बैश एलियास फाइल बनाएं
बैश के एलियास कमांड या मल्टी-कमांड सीक्वेंस को सिंगल शब्दों में मैप करने की अनुमति देते हैं। बैश में एलियास जोड़ने का आसान तरीका उन्हें "~/.bashrc" फ़ाइल के अंत में डालना है। सुविधा और संगठन के लिए, उन्हें एक अलग फ़ाइल में रखना सबसे अच्छा माना जाता है।
यह संभावना है कि यह फ़ाइल पहले से मौजूद है, और बैश का कॉन्फ़िगरेशन इसमें एक संदर्भ शामिल करता है। जांचें कि क्या यह "~/.bashrc" को अपने पसंदीदा वर्ड प्रोसेसर में खोलकर और खोज करके है:
if [-f ~/.bash_aliases]; then . ~/.bash_aliases Fi
यदि नहीं, तो इसे फ़ाइल के अंत में जोड़ें जो पहले से वहां है उसके बाद।
7-Zip की जानकारी हाथ में रखें
आप 7-Zip को टर्मिनल में इसकी कमांड-लाइन विकल्पों का विवरण देखने के लिए चला सकते हैं। अधिक व्यापक जानकारी के लिए, इस उपयोगकर्ता गाइड पर जाएं या प्रोग्राम के मैन पेज को इसके साथ देखें:
man 7z
ये आपके अपने कम्प्रेशन कमांड सेट करने में आपकी सहायता करेंगे। सबसे अधिक संभावना है कि हम यहां जो देखेंगे वह आपकी आवश्यकताओं को भी कवर करेगा। इसलिए आप उन्हें अपने .bash_aliases फ़ाइल में कॉपी-पेस्ट कर सकते हैं।
अल्ट्रा-कम्प्रेशन एलियास बनाएं
"~/.bash_aliases" फ़ाइल को अपने पसंदीदा वर्ड प्रोसेसर में खोलें - हम नैनो का उपयोग करते हैं। दर्ज करें:
alias 75='7z a -r -t7z -m0=lzma2 -mx=9 -myx=9 -mqs=on -ms=on'
alias 75 कहता है कि हम "75" कमांड बनाना चाहते हैं जिसका उपयोग हम अब से एक डायरेक्टरी में सभी फ़ाइलों और फ़ोल्डर्स को पैकेज्ड 7-Zip बंडल में कम्प्रेस करने के लिए करेंगे। हमने अपनी कमांड के लिए इस विशिष्ट नाम को अपनाया क्योंकि यह "7zip कम्प्रेशन लेवल 5" के संक्षिप्त संस्करण के रूप में याद रखना आसान है।
7z स्वयं कम्प्रेशन कमांड है। इसके बाद का a का अर्थ है "हम एक नए कम्प्रेस्ड पैकेज में फ़ाइलें जोड़ना चाहते हैं।" -r इंगित करता है कि p7zip को "उस फोल्डर तक सीमित नहीं रहना चाहिए जहां यह चला था" बल्कि अंतिम कम्प्रेस्ड पैकेज और उसमें सभी सब-फोल्डर्स को उनकी सभी सामग्री के साथ शामिल करना चाहिए।
-t7z -m0=lzma2 इंगित करता है कि हम 7zip पैकेज बनाना चाहते हैं जो मुख्य रूप से फ़ाइल कम्प्रेशन के लिए LZMA2 एल्गोरिदम का उपयोग करते हैं। यह आमतौर पर अधिकांश फ़ाइल प्रकारों के लिए सर्वोत्तम कम्प्रेशन देता है।
-mx=9 -myx=9 कम्प्रेशन के स्तर और "प्रयास की मात्रा" से मेल खाते हैं जो 7-Zip कम्प्रेस की जाने वाली फ़ाइलों की सामग्री का विश्लेषण करके सर्वोत्तम कम्प्रेशन रणनीति खोजने में लगाएगा। उनके मान जितने अधिक होंगे, कम्प्रेशन उतना अधिक होगा और उत्पादित बंडल उतना ही छोटा होगा।
अंत में, -mqs=on -ms=on परिभाषित करता है कि हम "सॉलिड" कम्प्रेशन चाहते हैं। इसका मतलब है कि p7zip समान फ़ाइलों को डेटा के सिंगल चंक्स के रूप में कम्प्रेस करेगा, जिससे और भी बेहतर परिणाम प्राप्त होंगे। वे एक विकल्प के रूप में मौजूद हैं जिसे आप बंद कर सकते हैं क्योंकि वे उपयोगी हैं लेकिन दो नकारात्मक भी साथ लाते हैं। वे कम्प्रेशन समय को बढ़ाते हैं और अंतिम बंडल से स्वतंत्र फ़ाइलों को डीकम्प्रेस करना असंभव बना देते हैं। सॉलिड कम्प्रेशन के साथ, आप "ज़िप से एक सिंगल फ़ाइल निकालने" के समकक्ष नहीं कर सकते, और आपको इसकी सामग्री तक पहुंचने के लिए पूरे बंडल को डीकम्प्रेस करना होगा।
एलियास को दोहराएं और "कम करें"
हम उस कमांड से शुरू करते हैं जो अधिकतम संभव कम्प्रेशन प्राप्त करती है ताकि अधिक तत्वों के साथ इसे विस्तारित करने के बजाय, हम पीछे जा सकें, पैरामीटर्स को हटा सकें और सेट मानों को कम कर सकें।
मौजूदा कमांड को पांच बार और कॉपी करके शुरू करें, प्रत्येक कमांड को अपनी लाइन में रखें। पहली लाइन को वैसे ही छोड़ दें, क्योंकि यह पहले से ही उच्चतम कम्प्रेशन स्तर प्राप्त करती है। बाकी को क्रम में संशोधित करें, अतिरिक्त विकल्पों को हटाकर और कम्प्रेशन स्तरों को कम करके जैसा कि नीचे दिखाया गया है। उनके एलियास को निचले कम्प्रेशन स्तरों से मेल खाने के लिए बदलना याद रखें।
आप निम्न में से किसी को भी कॉपी करके अपने ~/.bash_aliases में पेस्ट कर सकते हैं।
alias 75='7z a -r -t7z -m0=lzma2 -mx=9 -myx=9 -mqs=on -ms=on' alias 74='7z a -r -t7z -m0=lzma2 -mx=9' alias 73='7z a -r -t7z -m0=lzma2 -mx=7' alias 72='7z a -r -t7z -m0=lzma2 -mx=5' alias 71='7z a -r -t7z -m0=lzma2 -mx=3' alias 70='7z a -r -t7z -m0=lzma2 -mx=1'
अपने एलियास सक्रिय करें
फ़ाइल में परिवर्तन सहेजें और टर्मिनल पर वापस आएं। अपने नए एलियास को लोड और सक्रिय करने के लिए, कमांड का उपयोग करें:
source ~/.bashrc
आपके नए कम्प्रेशन कमांड सक्रिय हैं। यदि आप "आप क्या कम्प्रेस करना चाहते हैं" को पैरामीटर के रूप में परिभाषित नहीं करते हैं तो P7zip डिफ़ॉल्ट रूप से उस डायरेक्टरी में सभी फ़ाइलों पर काम करता है जहां यह चलता है। इसलिए अब से जब भी आप किसी फोल्डर की सामग्री को 7z पैकेज में कम्प्रेस करना चाहते हैं, तो बस कमांड दर्ज करें:
75 archive_name
यहां "75" पहले से उच्चतम कम्प्रेशन स्तर के लिए एलियास है, और "archive_name" कम्प्रेस्ड फ़ाइल पैकेज का नाम है। आप धीरे-धीरे छोटे लेकिन तेज़ कम्प्रेशन के लिए अन्य एलियास (75 से 70 तक) में से एक के साथ "75" को बदल सकते हैं, और अंतिम फ़ाइल के लिए जो चाहें नाम उपयोग कर सकते हैं।
यदि आपके कोई प्रश्न हैं, तो नीचे कमेंट्स में हमें बताएं।