سؤال قراءة محتويات ملف مضغوط دون استخراج؟


كيف يمكنني قراءة محتويات ملف معين في الأرشيف بدون استخراج الرمز البريدي. أنا أستخدم سطر أوامر Linux.

في وقت سابق سؤال يسأل عن عرض دليل الأرشيف. ولكن بالنسبة لي ، لا يكفي أن أرى قائمة بالملفات الموجودة في الأرشيف ، أحتاج إلى رؤية محتويات الملف في الأرشيف.


121
2017-08-17 10:41


الأصل


الازدواج مع superuser.com/questions/216617/zip-linux-view-files-in-archive - pevik
@ fixer1234 (وغيرها): السؤال المرتبط يسأل ، "كيف يمكنني عرض الملفات في أرشيف ZIP؟" AFAIC ، هذا هو نفس السؤال "كيف يمكنني رؤية محتويات الملف ...؟" إنه لأمر مؤسف أن العديد من الأشخاص الذين أجابوا على هذا السؤال فسرت ذلك كـ "كيف يمكنني عرض دليل الأرشيف؟" إجابة جيل (بشكل طبيعي) و رد Rajasekhar Tolety (على ما يبدو) لهذا السؤال provideansers على هذا السؤال. - Scott
Scott ، ربما يجب علينا معرفة كيفية دمج السؤالين بحيث يتم تغطية كلا الموضوعين في أحدهما ، أو إعادة تركيز الآخر ليكون واضحًا عن الدليل ثم نقل الإجابات بين كلا المكانين لمطابقة الأسئلة. الآن ، كلاهما ميشماش. - fixer1234
@ fixer1234: أوافق ، إلى حد ما. يخبرنا المشرفون دائمًا أن النسخ المكررة هي أمر جيد ، لأنها توفر سطحًا أكبر من التعرض لمحركات البحث (أي ، المزيد من الفرص للعثور على أحد الأسئلة). ولكن هناك فرك: إذا وجد المستخدم واحد من الأسئلة ، والارتباط ليس واضحًا (ولا ينظر أحد إلى قوائم الأسئلة "المرتبطة" و "ذات الصلة" - على الأقل ليس متابعين عشوائيين لنتائج البحث) ، فهذا يعني أن المستخدم لم يعثر إلا على جزء بسيط من الإجابات. دافيدبوستيل يدلي بصوته النهائي لإعادة فتح هذا السؤال. ربما يجب عليك التحدث معه. - Scott
Scott - بالنظر إلى أن سؤال السؤال يمثل "كيف يمكنني مشاهدة دليل الأرشيف؟" الإجابة كما قبلت ، لا بد لي من التفكير في أن من المحتمل أن نية السؤال. ولسوء الحظ ، صيغت بشكل غامض بحيث يمكن أن تعني إما التفسير. - M. Justin


الأجوبة:


unzip -l archive.zip يسرد محتويات أرشيف ZIP لضمان أن ملفك بداخله.

استخدم ال -c الخيار لكتابة محتويات الملفات المسماة إلى stdout (الشاشة) دون الحاجة إلى إلغاء ضغط الأرشيف بأكمله.

unzip -c archive.zip file1.txt file2.txt | less

لهذا النوع من العمليات أنا دائما الإخراج إلى less، وإلا فسوف يطير الملف بأكمله فوق الشاشة قبل أن تتمكن من قراءته.

BTW zcat كبيرة لعرض محتويات ملفات .gz دون الحاجة إلى إلغاء ضغطها أولاً.


164
2017-08-17 11:10



على الأقل في أوبونتو ، يتم تكوين أقل بطريقة ما للقيام بذلك بشكل افتراضي - لذلك less archive.zip يظهر في الواقع قائمة الملفات. - aviv
bzcat لعرض محتويات ملفات bz2 دون الحاجة إلى إلغاء ضغطها أولاً ... - Justin E
بفك -c يظهر أيضا اسم الملف وبعض الرسائل الإضافية (إرسالها إلى stdout). باستخدام -p بدلاً من ذلك فقط يرسل الملف بتنسيق ثنائي. هذا هو أكثر فائدة للأنابيب - Juan Calero
مع الخاص بك $LESSOPEN مضبوطة على النقطه ، يمكنك فقط less foo.gz لعرض المحتويات المضغوطة. (aviv: هذا هو الشيء نفسه الذي يمكن less foo.zip إلى الأنابيب unzip -l foo.zip في نفسه). - Peter Cordes
unzip -c archive.zip '*' | less يفعل ما كنت أبحث عنه: القط محتويات أرشيف مضغوط. - Peter Cordes


zipinfo هي أداة أخرى قد تستخدمها ، وهذا مفيد إذا كنت تستخدم نظامًا مغلقًا حيث unzip غير مسموح.


4
2017-08-01 14:13





إذا كنت تبحث فقط لعرض صور داخل الأرشيف ، يمكنك استخدامها الشروق أو أحدث MComix لرؤية الصور في الداخل .zip، .rar، .cbrو .cbz الملفات دون استخراج.


4
2018-03-24 20:22





بداية Emacs في سطر الأوامر وفتح ملفات zip الخاصة بك مع Zip-Archive الوضع. دون أي ضبط Emacs / elisp (يخشى المستخدمون الجدد بشكل عام) ، سترى تفاصيل الملف مثل من zipinfo: وسائط وطول وتاريخ ووقت

بعد ذلك ، ستتمكن من فتح الملفات في المخازن المؤقتة وحفظ تغييراتك مرة أخرى في الأرشيف ، مع اختصارات قياسية:

  • أدخل على اسم ملف في القائمة لفتحه
  • تحرير وحفظ مع Ctrl-x Ctrl-s
  • قتل العازلة Ctrl-k للرجوع إلى مخزن الأرشيف المؤقت والاستمرار

عندما تكون في Zip-Archive عازلة ، استخدم Ctrl-h m للحصول على جميع الاختصارات المتاحة في عرض المساعدة.

آمل أن يؤدي ذلك إلى اكتشاف ميزات Emacs الرائعة


1
2017-09-10 10:20





إذا كان الملف مدرجًا في أرشيف مضغوط ، فإنك تحتاج إلى استخراج هذا الملف من الأرشيف فقط (قد يعتمد على نوع الأرشيف ، وبعض الأرشيفات لا تستطيع استخراج الملفات بشكل منفصل)


-1
2017-08-17 10:46



نعم ، ولكن يمكنك استخراج إلى stdout والأنابيب الحق في النداء. - Peter Cordes
هذه ليست إجابة تقنية ، فمن المرجح أكثر من سياسي أو محام. يرجى أن يكون أكثر تحديدا! (أظهر الأمر على سبيل المثال) - Hola Soy Edu Feliz Navidad