Saya punya proyek dengan banyak folder / file tersembunyi di dalamnya. Saya ingin membuat arsip zip, tetapi di arsip tidak boleh ada folder / file tersembunyi. Jika file dalam folder tersembunyi tidak disembunyikan, mereka juga tidak boleh disertakan.
Saya tahu bahwa saya dapat membuat arsip zip direktori seperti ini:
zip -r zipfile.zip directory
Saya juga tahu bahwa saya dapat mengecualikan file dengan opsi -x, jadi saya pikir ini mungkin berhasil:
zip -r zipfile.zip directory -x .*
Itu tidak berhasil. Semua direktori tersembunyi masih dalam file zip.
command-line
zip
Martin Thoma
sumber
sumber
find community-chess/ -path '*/.*' -prune -o -type f -print | zip ~/community-chess.zip -@
) lebih panjang dari yang diharapkan, tetapi berfungsi dengan baik. Subdirektori juga disertakan, jadi +1 dan jawaban yang diterima :-)Pertama-tama jika Anda belum menginstal zip, instal dulu sebagai berikut:
Kemudian untuk sekadar membuat file zip:
Jika Anda ingin mengecualikan file tersembunyi:
Tidak Termasuk File dari Arsip Zip (diambil dari http://osxdaily.com/2013/04/30/how-to-exclude-files-from-a-zip-archive/ )
sumber
Tambahkan
"
ke.*
(jika tidak, shell Anda meluas.*
ke file dot di direktori saat ini), dan juga mengecualikan file tersembunyi di subdirektori:Ini akan menghasilkan file yang dimulai dengan yang
.
tidak akan ditambahkan ke file zip Anda.sumber
.*
akan diperluas oleh shell.*/.*
serta.*
(*/
cocok dengan urutan non-kosong direktori).Yang ini termasuk semua "." direktori, subdirektori, dan "." file atau direktori di dalam direktori ... Pada dasarnya jawaban pertama tetapi termasuk tingkat atas "." file.
sumber
Contoh untuk mengecualikan semua folder yang dimulai dengan. :
Kompres lebih baik tetapi lebih lambat:
sumber
Metode yang benar adalah:
sumber
Saat zipping dir, tidak termasuk ekstensi file:
sumber
Tanpa folder dan file tersembunyi di direktori:
direktori:
|── .git │ ├── src │ └── Work.file ├── .test │ └── .file └── test.file
sumber