Saya mencoba zip direktori (di Unix via SSH) tapi saya perlu mengecualikan beberapa subdirektori (dan semua file dan direktori di dalamnya).
Sejauh ini saya punya ini:
zip -r myarchive.zip dir1 -x dir1/ignoreDir/**/*
Tapi sepertinya itu tidak berhasil.
Saya juga mencoba
zip -r myarchive.zip dir1 -x dir1/ignoreDir1/* dir1/ignoreDir2/*
Namun itu masih akan menyertakan subdirektori di dalam ignDir1 dan ignDir2.
Struktur subdirektori dalam direktori yang ingin saya kecualikan cukup besar sehingga saya tidak bisa begitu saja menambahkan setiap direktori ke argumen -x.
Adakah yang tahu bagaimana melakukan ini?
Jawaban:
Saya sangat dekat!
Perintah aktual yang saya butuhkan adalah:
sumber
Untuk sistem khusus saya untuk mengecualikan direktori saya harus memberi tanda kutip di sekitar direktori saya yang dikecualikan dan itu bekerja seperti pesona:
Catatan:
- ini mengecualikan direktori yang akan dikecualikan dan semua file di dalamnya.
- Anda harus menggunakan jalur lengkap ke direktori yang ingin Anda kecualikan!
sumber
zip
, yang akan menerima daftar jalur ke entri dalam direktori yang ditentukan, tetapi tidak jalur ke file dalam subdirektori dari mereka, sehingga menyebabkanzip
tidak mengabaikan segala sesuatu di bawah direktori yang diberikan.@sulman menggunakan:
masih akan menyertakan direktori dir1 / ignDir1 / kosong di arsip zip, menggunakan:
akan melakukan triknya, Anda juga dapat menggunakan ** terkemuka untuk mencari di subfolder alih-alih hanya dir1
sumber
Berikut ini akan dilakukan
Untuk apa kau butuh
**
, @sulman?Ini berfungsi seperti pesona bagi saya sebagai berikut:
sumber
Sama seperti jawaban lain, tetapi mengecualikan direktori sepenuhnya, alih-alih mengecualikan semua isi direktori:
sumber
Saya menemukan ini bekerja dari David R Heffelfinger :
Itu mengecualikan direktori dan isinya.
sumber
dir1
danignorDir2
dimaksudkan sebagai garis miring ke depan. Apakah maksud Anda agar backslash yang lain menjadi backslash? Jika ya, maka Anda baru saja menyalin jawaban fuzzybee dari dua tahun lalu.Bagi saya bekerja: zip -9 -r ~ / folded.zip online -x folder / folder2 / folder3 / foldern / \ * .
Tampaknya asterisk harus diloloskan.
sumber