निर्देशिका मौजूद होने पर किसी फ़ाइल को अनज़िप करने की कोशिश करना, 'फ़ाइलनाम से मेल नहीं खाता'


32

Joomla_3.0.3-Stable-Full_Package.zip नाम की एक फाइल को अनज़िप करने की कोशिश करते हुए, जिसका नाम joomla है, जिसका नाम मुझे मिलता है, उसका मिलान नहीं हुआ। ऐसा क्यों है?

[root @ Feddy Joomla] # अनज़िप -Z Joomla_3.0.3-Stable-Full_Package.zip / opt / lampp / htdocs / joomla /
संग्रह: Joomla_3.0.3-Stable-Full_Package.zip
सावधानी: फ़ाइल का नाम मेल नहीं खाता: htdocs / Joomla /

यहाँ निर्देशिका का स्क्रीन कास्ट है:

जूमला स्क्रीन कास्ट

(जूमला निर्देशिका खाली है)

जवाबों:


36

आप यह भी प्राप्त कर सकते हैं जब फ़ाइलों को अनज़िप करने और वाइल्डकार्ड वर्ण का उपयोग करने की कोशिश की जाती है। उदाहरण के लिए:

unzip -o somearchive.zip somedir/*

क्या हो सकता है कि बैश somedir/*एक वास्तविक मौजूदा डायर और इसमें मौजूद फाइलों में फैल जाए। फिर उस सूची को अनझिप कर दिया जाता है और यह इन फाइलों को जिप फाइल में खोजने की कोशिश करता है।

इस व्यवहार को रोकने के लिए बस *इस तरह से बचें :

unzip -o somearchive.zip somedir/\*

या, दोहरे उद्धरण चिह्नों में निकालने के लिए फाइलें डालें:

unzip -o somearchive.zip "somedir/*"

1
-ओ झंडा क्या है?
अमलगोविनास

1
-O विकल्प बिना किसी संकेत के मौजूदा फ़ाइलों को अधिलेखित करना है।
sjbotha

जब आपका -oझंडा गलत जगह पर हो, तो आपको 'फाइलनाम unzip -o ARCHIVE_NAME.zipunzip ARCHIVE_NAME.zip -o
नॉट मैचेड

डाउनवोटिंग क्योंकि, यह जवाब सही बयान करता है, वे उस मुद्दे को संबोधित नहीं करते हैं जो ओपी के पास है, जो उस तर्क के बारे में गलतफहमी है जिसे अनज़िप करना है।
अर्नेस्ट फ्राइडमैन-हिल

मुझे यह त्रुटि मिली, यह पृष्ठ मिला, और इस उत्तर ने मेरी समस्या हल कर दी।
डेरेक बेनेट

16

संग्रह नाम के बाद फ़ाइल नाम तर्क निकालने के लिए फ़ाइल निर्दिष्ट करता है। -dलक्ष्य निर्देशिका निर्दिष्ट करने के लिए उपयोग करें :

Usage: unzip [-Z] [-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir]
    ...
    -d  extract files into exdir

इसके अलावा, -Zसंग्रह को क्वेरी करने के लिए उपयोग किया जाता है, निकालने के लिए नहीं।


तुम्हें नहीं मिला क्या आप कृपया कमांड लिख सकते हैं
सुहैल गुप्ता

1
@ सुहेलगुप्ता: unzip -d /opt/lampp/htdocs/joomla/ Joomla_3.0.3-Stable-Full_Package.zipयानी ड्रॉप करें -Z, जोड़ें -d
चोरोबा

2

यह सटीक कमान मेरे लिए काम करती है:
unzip -o archive.zip -d /Users/current/Dev/tools/

विकल्पों -oऔर -d(गंतव्य / मुद्रास्फीति पथ) के संयोजन पर ध्यान दें ।


मेरे लिए भी काम किया।
मणिकंदन अरुणाचलम

2

यदि आपको ज़िप की पूरी निर्देशिका को एकल कमांड से जोड़ने की कोशिश की जाती है, तो आपको वह त्रुटि भी मिलेगी, जैसे:

unzip *.zip

मुझे दूसरी साइट पर समाधान मिला। *प्रतीक, भाग निकले किया जाना चाहिए ताकि आप इस बजाय चलना चाहिए:

unzip \*.zip

बजाय।


ओह .. लगता है भागने के प्रतीक की अनुमति नहीं है, लेकिन यकीन है कि हर कोई जानता है कि वे क्या कर रहे हैं।
dfasdfg

इससे मुझे कोई मतलब नहीं है, कम से कम अगर आप यूनिक्स / लिनक्स के बारे में बात कर रहे हैं तो नहीं। (अगर आप विंडोज के बारे में बात कर रहे हैं, तो यह समझ में आ सकता है, लेकिन यह सवाल फेडोरा लिनक्स के बारे में है।) और, इस हद तक कि यह समझ में आता है (संभावित रूप से), यह sjbotha के उत्तर का एक डुप्लिकेट प्रतीत होता है  । क्या आप बता सकते हैं कि आपका क्या मतलब है?
जी-मैन का कहना है कि 'मोनिका'

मैं unzip कमांड के बारे में बात कर रहा था जिसका उपयोग मैंने linux सिस्टम पर किया था। मेरे पास कई ज़िप फ़ाइलों वाली एक निर्देशिका थी और मैंने उन सभी को अनज़िप * .zip के साथ निकालने की कोशिश की और उस त्रुटि को प्राप्त किया क्योंकि * बच नहीं गया था। आप भी इस बारे में सही नहीं हो सकते हैं क्योंकि ऑप ने सिर्फ एक ज़िप फ़ाइल निकालने की कोशिश की थी और मैं एक कमांड से कई निकालने की कोशिश कर रहा था।
dfasdfg

1

एक नए नाम के साथ एक ज़िपित फ़ाइल को अनज़िप करने की कोशिश करने से 'फ़ाइलनाम मेल नहीं खाता' अपवाद बढ़ जाएगा। वर्कअराउंड करने के लिए जिप फाइल को गंतव्य निर्देशिका में ले जाएं

mv the_file.zip somedir/

गंतव्य निर्देशिका पर नेविगेट करें

cd somedir/

वहां से गंतव्य फ़ाइल नाम तर्क के बिना अनज़िप कमांड चलाएं

unzip the_file.zip

सब कुछ अच्छा चलेगा।

तो इस मामले में आदेश होना चाहिए

[root@Feddy Joomla]# mv Joomla_3.0.3-Stable-Full_Package.zip /opt/lampp/htdocs/joomla/
[root@Feddy Joomla]# cd /opt/lampp/htdocs/joomla/
[root@Feddy Joomla]/opt/lampp/htdocs/joomla# unzip Joomla_3.0.3-Stable-Full_Package.zip
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.