ซิปทุกอย่างในไดเรกทอรีปัจจุบัน


84

ฉันต้องการบีบอัดและจัดทำทุกอย่างรวมถึงไฟล์และโฟลเดอร์ในไดเรกทอรีปัจจุบันเป็นไฟล์ ZIP ไฟล์เดียวบน Ubuntu

อะไรคือคำสั่งที่สะดวกที่สุดสำหรับสิ่งนี้ (และชื่อของเครื่องมือที่จำเป็นในการติดตั้งถ้ามี)

แก้ไข: จะทำอย่างไรถ้าฉันต้องการยกเว้นหนึ่งโฟลเดอร์หรือหลายไฟล์

คำตอบ:


103

ติดตั้งzipและใช้งาน

zip -r foo.zip .

คุณสามารถใช้ค่าสถานะ-0(ไม่มี) เพื่อ-9(ดีที่สุด) เพื่อเปลี่ยนการบีบอัด

การแยกไฟล์สามารถทำได้ผ่านการ-xตั้งค่าสถานะ จากหน้าคน:

-x files
--exclude files
          Explicitly exclude the specified files, as in:

                 zip -r foo foo -x \*.o

          which  will  include the contents of foo in foo.zip while excluding all the files that end in .o.  The backslash avoids the shell filename substitution, so that the name matching
          is performed by zip at all directory levels.

          Also possible:

                 zip -r foo foo -x@exclude.lst

          which will include the contents of foo in foo.zip while excluding all the files that match the patterns in the file exclude.lst.

          The long option forms of the above are

                 zip -r foo foo --exclude \*.o

          and

                 zip -r foo foo --exclude @exclude.lst

          Multiple patterns can be specified, as in:

                 zip -r foo foo -x \*.o \*.c

          If there is no space between -x and the pattern, just one value is assumed (no list):

                 zip -r foo foo -x\*.o

          See -i for more on include and exclude.

+1 จะทำอย่างไรถ้าฉันต้องการยกเว้นบางโฟลเดอร์หรือไฟล์
เทอร์รี่ลี่

1
@TerryLiYifeng ฉันแก้ไขคำตอบของฉันด้วยข้อมูลเกี่ยวกับเรื่องนั้น
SkaveRat

18

ฉันเดาว่าหลายคนที่มาจาก Google กับคำถามนี้หมายถึง "เก็บถาวรและบีบอัด" เมื่อพวกเขาเขียน "zip" รูปแบบทางเลือกของzipคือtar :

tar -czf copy.tar.gz whatever/

โดยที่ไฟล์บีบอัดที่เก็บถาวรจะเป็น copy.tar.gz และเนื้อหาจะเป็นทุกอย่างในโฟลเดอร์

 -c, --create
       create a new archive
 -z, --gzip, --gunzip --ungzip
 -f, --file ARCHIVE
       use archive file or device ARCHIVE

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