السلوك الافتراضي لـ gunzip هو حذف ملف .gz بعد إلغاء ضغطه.
كيف يمكنني منعه من حذف الملف؟
إذا لم يتم تضمين هذه الوظيفة ، فهل هناك برنامج بديل يسمح بذلك؟
أنا أستخدم Ubuntu 9.04
أنت تبحث عن:
gzcat x.txt.gz >x.txt
أمر gzcat
مكافئ لـ gunzip -c
الذي يكتب ببساطة دفق الإخراج إلى stdout
. سيؤدي ذلك إلى ترك الملف المضغوط دون تغيير. لذلك يمكنك أيضًا استخدام:
gunzip -c x.txt.gz >x.txt
لاحظ أنه في بعض الأنظمة ، يُعرف gzcat أيضًا باسم zcat
، لذا قم بتشغيل مثل هذا بدلاً من ذلك:
zcat x.txt.gz >x.txt
يمكنك استخدام الخيار -c
الخاص بـ gunzip الذي يكتب الإخراج إلى stdout ، ثم توجيهه إلى الملف الذي تختاره:
gunzip -c compressed-file.gz > decompressed-file
مزيد من التفاصيل على صفحة دليل .
الحل الأبسط هو استخدام gunzip كمرشح مثل هذا:
gunzip < myfile.gz > myfile
إذا كانت فعلاً عبارة عن tarball (ملحق .tgz أو .tar.gz) ، فبدلاً من إعادة التوجيه إلى ملف مثل كل الإجابات حتى الآن ، فأنت تريد توجيهه إلى tar ، مثل ذلك:
gunzip -c myfile.tar.gz | tar xvf -
بحيث تحصل على المحتويات الفعلية.
استخدم خيار -c
لإلغاء ضغط الملف على stdout. لن تلمس الملف الأصلي.
gunzip -c myfile.gz > myfile
gzip -dk myfile.gz
OR
gunzip -k myfile.gz
تعليقات:
-k --keep Keep (don't delete) input files during compression or decompression.
يمكن لـ Gnu tar قراءة ملفات gzip: tar -zxsvf myfile.tar.gz
أو tar -jxzvf myfile.tar.bz2
لملفات tar bzipped.