Linux unzip संपूर्ण गाइड: अनज़िप करने से लेकर फ़ॉन्ट/टेक्स्ट करप्शन रोकने तक के व्यावहारिक टिप्स

परिचय

यह गाइड Linux परिवेश में ZIP फ़ाइलों को अनज़िप (decompress) करते समय अक्सर उपयोग किए जाने वाले unzip कमांड के बुनियादी उपयोग और आवश्यक व्यावहारिक विकल्पों का परिचय देती है। इसमें फ़ाइल सूची का पूर्वावलोकन करने, विशिष्ट फ़ोल्डर में अनज़िप करने और विंडोज़ फ़ाइलों के टेक्स्ट एन्कोडिंग करप्शन को ठीक करने के तरीके के बारे में चरण-दर-चरण निर्देश शामिल हैं।

unzip पैकेज इंस्टॉल करना और टेस्ट ज़िप फ़ाइल तैयार करना

Ubuntu परिवेश में संपीड़ित (compressed) फ़ाइलों को निकालने और बनाने के लिए, sudo apt-get update -qq && sudo apt-get install -y unzip zip कमांड चलाकर आवश्यक पैकेज इंस्टॉल करें।

sudo apt-get update -qq && sudo apt-get install -y unzip zip

अभ्यास के लिए एक समर्पित कार्यक्षेत्र (workspace) बनाने और उस निर्देशिका में जाने के लिए mkdir -p ~/unzip-demo && cd ~/unzip-demo कमांड चलाएं।

mkdir -p ~/unzip-demo && cd ~/unzip-demo

संपीड़न परीक्षण के लिए उपयोग की जाने वाली नमूना टेक्स्ट और कॉन्फ़िगरेशन फ़ाइलें बनाने के लिए echo 'Hello Linux' > file1.txt && echo 'Config Content' > config.cfg कमांड चलाएं।

echo ‘Hello Linux’ > file1.txt && echo ‘Config Content’ > config.cfg

अभ्यास फ़ाइलों को एक साथ बंडल करके एक ज़िप संग्रह (archive) बनाने के लिए zip -r sample.zip file1.txt config.cfg कमांड चलाएं।

zip -r sample.zip file1.txt config.cfg

फ़ाइलों को निकाले बिना सामग्री का पूर्वावलोकन करना (unzip -l)

अभ्यास फ़ाइलों वाली कार्यशील निर्देशिका (working directory) में जाने के लिए cd ~/unzip-demo कमांड चलाएं।

cd ~/unzip-demo

unzip -l sample.zip कमांड वास्तव में फ़ाइलों को निकाले बिना संग्रह के अंदर मौजूद फ़ाइलों की सूची, प्रत्येक फ़ाइल का आकार और संशोधन तिथि पहले से देखने की अनुमति देता है।
यह बड़ी ज़िप फ़ाइलों को निकालने से पहले उनकी आंतरिक संरचना और आवश्यक डिस्क स्थान की सुरक्षित रूप से जाँच करने के लिए विशेष रूप से उपयोगी है।

unzip -l sample.zip

वांछित निर्देशिका में निकालना और मौजूदा फ़ाइलों को ओवरराइट करना नियंत्रित करना (unzip -d, -o)

अभ्यास ज़िप फ़ाइल वाली कार्यशील निर्देशिका में जाने के लिए cd ~/unzip-demo कमांड चलाएं।

cd ~/unzip-demo

निकाली गई फ़ाइलों को अलग से संग्रहीत करने के लिए एक गंतव्य निर्देशिका (destination directory) बनाने के लिए mkdir -p ./extracted कमांड चलाएं।

mkdir -p ./extracted

unzip sample.zip -d ./extracted कमांड -d विकल्प के साथ निर्दिष्ट ./extracted निर्देशिका में संग्रह की सामग्री को निकालता है।
यह वर्तमान कार्यशील निर्देशिका को अव्यवस्थित किए बिना फ़ाइलों को किसी विशिष्ट स्थान पर व्यवस्थित रूप से निकालने के लिए बहुत सुविधाजनक है।

unzip sample.zip -d ./extracted

unzip -o sample.zip -d ./extracted कमांड फ़ाइलों को निकालते समय उपयोगकर्ता पुष्टि संकेत (confirmation prompt) के बिना मौजूदा फ़ाइलों को जबरन ओवरराइट करता है।
इसका उपयोग मुख्य रूप से स्क्रिप्ट या स्वचालित परिनियोजन (automated deployment) परिवेशों में डुप्लिकेट फ़ाइलों के ओवरराइट प्रश्नों के कारण प्रक्रिया को रुकने से रोकने के लिए किया जाता है।

unzip -o sample.zip -d ./extracted

गंतव्य निर्देशिका में निष्कर्षण सफलतापूर्वक पूरा हुआ है या नहीं, यह सत्यापित करने और फ़ाइल सूची तथा विशेषताओं की जाँच के लिए ls -la ./extracted कमांड चलाएं।

ls -la ./extracted

केवल विशिष्ट फ़ाइलों को चुनकर निकालना

अभ्यास ज़िप फ़ाइल वाली कार्यशील निर्देशिका में जाने के लिए cd ~/unzip-demo कमांड चलाएं।

cd ~/unzip-demo

चुनिंदा रूप से निकाली जाने वाली फ़ाइलों को अलग से संग्रहीत करने के लिए एक गंतव्य निर्देशिका बनाने के लिए mkdir -p ./selective कमांड चलाएं।

mkdir -p ./selective

unzip sample.zip file1.txt -d ./selective कमांड पूरे संग्रह को निकाले बिना केवल निर्दिष्ट file1.txt फ़ाइल को निकालकर निकालता है।
यह बड़ी ज़िप फ़ाइलों से किसी विशिष्ट कॉन्फ़िगरेशन फ़ाइल या आवश्यक लॉग फ़ाइल को तुरंत निकालने और जांचने के लिए अत्यधिक उपयोगी है।

unzip sample.zip file1.txt -d ./selective

केवल निर्दिष्ट फ़ाइल ही निकाली गई है या नहीं, यह जांचने के लिए गंतव्य निर्देशिका की फ़ाइल सूची और विशेषताओं की जाँच ls -la ./selective कमांड चलाकर करें।

ls -la ./selective

Windows में संपीड़ित फ़ाइलों के टेक्स्ट/फ़ॉन्ट करप्शन को रोकना (unzip -O CP949)

अभ्यास ज़िप फ़ाइल वाली कार्यशील निर्देशिका में जाने के लिए cd ~/unzip-demo कमांड चलाएं।

cd ~/unzip-demo

निकाली गई फ़ाइलों को सुरक्षित रूप से संग्रहीत करने के लिए एक गंतव्य निर्देशिका बनाने के लिए mkdir -p ./korean-test कमांड चलाएं।

mkdir -p ./korean-test

unzip -O CP949 sample.zip -d ./korean-test कमांड Windows परिवेश की डिफ़ॉल्ट कैरेक्टर एन्कोडिंग CP949 (EUC-KR) को निर्दिष्ट करके फ़ाइल नामों के विकृत हुए बिना ./korean-test निर्देशिका में फ़ाइलों को निकालता है।
यह Windows और Linux सिस्टम के बीच कैरेक्टर सेट के अंतर के कारण होने वाली फ़ाइल नाम करप्शन की समस्या का प्रभावी समाधान प्रदान करता है।

unzip -O CP949 sample.zip -d ./korean-test

निर्दिष्ट गंतव्य निर्देशिका में फ़ाइलें सामान्य रूप से निकाली गई हैं या नहीं, यह सत्यापित करने के लिए ls -la ./korean-test कमांड चलाएं।

ls -la ./korean-test

अब तक, हमने Linux परिवेश में unzip कमांड का उपयोग करके बुनियादी निष्कर्षण से लेकर टेक्स्ट करप्शन समाधान तक के प्रमुख व्यावहारिक सुझावों को संक्षेप में देखा है।
टर्मिनल पर काम करते समय बिना किसी एन्कोडिंग समस्या के संपीड़ित फ़ाइलों को कुशलतापूर्वक प्रबंधित करने के लिए इन विकल्पों का उपयोग करें।