การบีบอัดโฟลเดอร์และเนื้อหาลงในไฟล์. zip ใน Linux


80

ฉันจะสร้างไฟล์. zip ที่มีทุกไฟล์และทุกโฟลเดอร์ในไดเรกทอรีได้อย่างไร

linux  zip 

จำเป็นต้องเป็นไฟล์. zip หรือไฟล์บีบอัดหรือไม่?

1
ฉันใช้ 'tar': tar -zcvf archive.tar.gz ไดเรกทอรี / unix.stackexchange.com/questions/93139/…
njuhgn

คำตอบ:


124
zip -r foo.zip dir_path

-r หมายถึงการเรียกซ้ำและบอกให้ผ่านโฟลเดอร์ย่อยทั้งหมด คุณไม่จำเป็นต้องใช้.zipชื่อไฟล์ ( foo.zip) ในขณะที่มันจะสร้างขึ้นใหม่
2924019

ความคิดเห็นของ @ user2924019 ที่คุณไม่จำเป็นต้องระบุชื่อรหัสไปรษณีย์นั้นไม่เป็นความจริงใน CentOS7
killjoy

CentOS7 เป็นที่ที่ฉันทำการทดสอบ
user2924019

1
เรามาถึงสิ่งที่เป็นที่รู้จักในฐานะคนเม็กซิกันที่ขัดแย้งตอนนี้เราไม่?
seizethecarp

16

ลอง:

zip -r filename.zip /path/to/folder

หมายเหตุ - การดำเนินการนี้จะเกิดขึ้นซ้ำ ๆ ซึ่งจะเป็นการบีบอัดโฟลเดอร์ทั้งหมดและโฟลเดอร์ย่อยทั้งหมดของโฟลเดอร์ที่กำหนด


5

ใช้-rตัวเลือก จากรหัสไปรษณีย์ (1) :

-r

เดินทางโครงสร้างไดเรกทอรีซ้ำ; ตัวอย่างเช่น:

zip -r foo foo

ชื่อของไฟล์ zip มาก่อน "เรียกซ้ำ" หมายถึงไฟล์ซิปจะรวมโฟลเดอร์ย่อยของโฟลเดอร์ที่กำหนดโฟลเดอร์ย่อยของโฟลเดอร์เหล่านั้นและอื่น ๆ


ไฟล์. zip ไปที่ใดหลังจากการซิป
Siraj Alam

3

หากคุณผูกพันกับ zip ฉันจะใช้:

zip -r zipfilename directoryPath

-rเป็นกุญแจสำคัญ แต่คุณสามารถหาตัวเลือกทั้งหมดที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.