เมื่อดูที่ข้อผิดพลาดที่คุณเห็นควบคู่ไปกับข้อเท็จจริงที่ว่าคุณสามารถคลายการบีบอัดมันบอกว่าไฟล์นั้นเป็นไฟล์เก็บถาวร TAR / Gzip ของแท้ แต่อาจไม่ใช่ TAR ทันทีที่สร้างขึ้นหลังจาก Gzip
หมายความว่าหากคุณดาวน์โหลดจากเว็บเซิร์ฟเวอร์บางครั้งการบีบอัด Gzip จะถูกนำไปใช้กับเนื้อหาเว็บในระดับเซิร์ฟเวอร์เพื่อเพิ่มความเร็วในการดาวน์โหลดเนื้อหา แต่ถ้าตั้งค่าไม่ถูกต้องบนเซิร์ฟเวอร์ให้เพิกเฉยต่อเนื้อหาที่ถูกบีบอัดอยู่เช่นนี้ไฟล์นั้นสามารถดับเบิลไฟล์ Gzip ได้โดยไม่ตั้งใจ
โดยที่ในใจฉันจะดูว่าเพียงแค่ปลด Gzip จากบรรทัดคำสั่งเพื่อดูว่าเกิดอะไรขึ้น ใช้คำสั่งเช่นนี้:
gzip -d ldtp_3.5.0.orig.tar.gz
และดูว่าไฟล์ผลลัพธ์คืออะไร ฉันมีความรู้สึกตลกหลังจากที่คุณเรียกใช้คำสั่งนั้นคุณจะไม่เห็น ldtp_3.5.0.orig.tar
ในไดเรกทอรี แต่เป็นไฟล์ชื่อเหมือนแหล่งที่มา ldtp_3.5.0.orig.tar.gz
- แต่บางทีด้วยการปรับเปลี่ยนมีการเปลี่ยนแปลง? หากเป็นกรณีนี้จะเป็นการดับเบิล Gzipped อย่างแท้จริง ดังนั้น ณ จุดนี้ - หลังจากยกเลิกการเริ่มต้น Gzip - คุณสามารถเรียกใช้ tar
คำสั่งที่คุณมีเช่นนี้:
tar -xvzf ldtp_3.5.0.orig.tar.gz
และตอนนี้มันควรจะขยายขนาดไฟล์เก็บถาวร TAR อย่างสมบูรณ์
อีกวิธีในการทำสิ่งที่คล้ายกับกระบวนการสองขั้นตอนคือการส่งออก gzip
ไปยัง tar
อย่างนี้:
gzip -dc ldtp_3.5.0.orig.tar.gz | tar -xvzf -
c
ใน gzip
เช่นเดียวกับ -
ในตอนท้ายของคำสั่งเป็นกุญแจสำคัญ:
-
c
ตัวเลือกสำหรับ gzip
จะบอก gzip
เพื่อขยายไปยังสตรีมเอาต์พุตมาตรฐาน
-
-
ในตอนท้ายของ tar
คำสั่งหมายถึง "ใช้อินพุตมาตรฐาน" ดังนั้นประกอบกับ -c
ใน gzip
จากนั้นไปป์นั้นจะนำเอาท์พุทสตรีมมาตรฐานไปยัง gzip
และเชื่อมต่อกับอินพุตมาตรฐาน tar
.
gzip -d ldtp_3.5.0.orig.tar.gz
และฉัน (ผิดปกติ) ได้รับ.tar
ไฟล์. อย่างไรก็ตามเมื่อฉันพยายามtar -xvf ldtp_3.5.0.orig.tar
ฉันพบข้อผิดพลาด:tar: v: Cannot open: No such file or directory tar: Error is not recoverable: exiting now