GNU/Linux >> Belajar Linux >  >> Linux

Perintah Shell ke direktori tar tidak termasuk file/folder tertentu

Anda dapat memiliki beberapa opsi pengecualian untuk tar jadi

$ tar --exclude='./folder' --exclude='./upload/folder2' -zcvf /backup/filename.tgz .

dll akan bekerja. Pastikan pasti untuk meletakkan --exclude sebelum item sumber dan tujuan.


pertanyaan lama dengan banyak jawaban, tetapi saya menemukan bahwa tidak ada yang cukup jelas bagi saya, jadi saya ingin menambahkan percobaan saya.

jika Anda memiliki struktur berikut

/home/ftp/mysite/

dengan file/folder berikut

/home/ftp/mysite/file1
/home/ftp/mysite/file2
/home/ftp/mysite/file3
/home/ftp/mysite/folder1
/home/ftp/mysite/folder2
/home/ftp/mysite/folder3

jadi, Anda ingin membuat file tar yang berisi segalanya di dalam /home/ftp/mysite (untuk memindahkan situs ke server baru), tetapi file3 hanyalah sampah, dan semua yang ada di folder3 juga tidak diperlukan, jadi kami akan melewatkan keduanya.

kami menggunakan format

tar -czvf <name of tar file> <what to tar> <any excludes>

di mana c =buat, z =zip, dan v =verbose (Anda dapat melihat file saat dimasukkan, berguna untuk memastikan tidak ada file yang Anda kecualikan ditambahkan). dan f=file.

jadi, perintah saya akan terlihat seperti ini

cd /home/ftp/
tar -czvf mysite.tar.gz mysite --exclude='file3' --exclude='folder3'

perhatikan file/folder yang dikecualikan relatif ke root tar Anda (Saya telah mencoba path lengkap di sini relatif terhadap / tetapi saya tidak dapat membuatnya berfungsi).

harap ini akan membantu seseorang (dan saya lain kali saya mencarinya di Google)


Opsi yang memungkinkan untuk mengecualikan file/direktori dari cadangan menggunakan tar:

Kecualikan file menggunakan beberapa pola

tar -czf backup.tar.gz --exclude=PATTERN1 --exclude=PATTERN2 ... /path/to/backup

Kecualikan file menggunakan file kecualikan yang diisi dengan daftar pola

tar -czf backup.tar.gz -X /path/to/exclude.txt /path/to/backup

Kecualikan file menggunakan tag dengan menempatkan file tag di direktori mana pun yang harus dilewati

tar -czf backup.tar.gz --exclude-tag-all=exclude.tag /path/to/backup

Anda dapat mengecualikan direktori dengan --exclude untuk tar.

Jika Anda ingin mengarsipkan semuanya kecuali /usr Anda dapat menggunakan:

tar -zcvf /all.tgz / --exclude=/usr

Dalam kasus Anda, mungkin sesuatu seperti

tar -zcvf archive.tgz arc_dir --exclude=dir/ignore_this_dir

Linux
  1. Cara mengecualikan direktori di find . memerintah

  2. Mengecualikan direktori saat membuat file .tar.gz

  3. perintah linux untuk mengosongkan semua file direktori

  1. tar/gzip tidak termasuk file tertentu

  2. Bagaimana saya bisa mengecualikan direktori dari perintah ls

  3. Bagaimana cara tar file dengan urutan yang diurutkan?

  1. Cara Mengecualikan File Ukuran Tertentu Dari Menyalin Di Linux

  2. Cara Membuat File Dengan Ukuran Tertentu Di Linux

  3. [Linux] :Cara mengecualikan direktori saat menggunakan perintah shell "tar"