Masukkan semua yang ada di direktori saat ini


84

Saya ingin mengompres dan mengemas semuanya, termasuk file dan folder di direktori saat ini, menjadi satu file ZIP di Ubuntu.

Apa yang akan menjadi perintah paling nyaman untuk ini (dan nama alat yang perlu dipasang jika ada)?

Sunting: Bagaimana jika saya perlu mengecualikan satu folder atau beberapa file?

Jawaban:


103

Instal zipdan gunakan

zip -r foo.zip .

Anda dapat menggunakan flag -0(tidak ada) ke -9(terbaik) untuk mengubah kompresi

File yang dikecualikan dapat dilakukan melalui -xflag. Dari halaman manual:

-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 Bagaimana jika saya ingin mengecualikan beberapa folder atau file?
Terry Li

1
@TerryLiYifeng Saya mengedit jawaban saya dengan info tentang itu
SkaveRat

18

Saya kira banyak orang yang datang melalui Google ke pertanyaan ini berarti "arsipkan dan kompres" ketika mereka menulis "zip". Alternatif untuk format zip adalah tar :

tar -czf copy.tar.gz whatever/

di mana file arsip terkompresi akan menjadi copy.tar.gz dan konten akan menjadi segalanya di folder apa pun.

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

1
Untuk xz, opsinya adalah--J or --xz
Anwar
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.