it-swarm.asia

Dosyaları yedeklemek için 7-Zip nasıl kullanabilirim, ancak bazı dizinleri hariç tutabilirim

Bir dizini yedeklemek için 7-Zip kullanmak istiyorum, ancak ".svn" adlı tüm dizinleri (kaynak ağacın herhangi bir yerinde) hariç tutmasını istiyorum. Bunun mümkün olup olmadığını bilen var mı ve bu durumda nasıl?

43
Mikael Sundberg

Tüm .svn dizinlerini hariç tutmak için -xr!?svn\* anahtarını eklemeniz gerekir.

Örneğin, aşağıdakiler, C:\Project\To\Backup değerini sağlayan tüm klasörler hariç, ?svn dizininin bir yedeğini oluşturur:

"C:\Program Files\7-Zip\7z.exe" a -r -tzip -y -xr!?svn\* Project.Zip C:\Project\To\Backup\*
35
ManiacD

.Svn (veya potansiyel olarak _svn) klasörlerini dışlamak için 7-Zip kullanmak yerine, dışa aktarmak için svn export komutunu (svn.exe'yi SlikSVN ) kullanarak öneririm. çalışan kopya geçici bir klasöre:

svn export C:\Path\To\WC C:\Backup\Staging

Sonra 7-Zip'i aşağıdaki gibi kullanın:

7z.exe a "C:\Parth\To\Archive" "C:\Backup\Staging\*" -bd t7z -v2g -r

Sonra hazırlama klasörünü silin.

Yerel çalışma kopyalarımı yedeklemek için yaptığım şey bu.

13
Richard Slater

Dosya veya dizin listesini kullanarak 7Zip içeren dosyaları hariç tutabilirsiniz:

/path/to7Zip/7z a -bd f:/backup/backup_2009-08-23_daily.Zip home \
          '[email protected]\path\to\backup_daily_exclude.lst'

Dışlama dosyası şuna benzer:

home\Photos\iPod*
home\dhltd\*
BlogMatrix\Sparks\db\*.archive
home\Eclipse\*
.svn

Anahtar -xr ve özellikle "r", dışlama listesinin dizinin her düzeyine tekrarlı olarak uygulandığını belirtir. 2 dışlama dosya listesini biri mutlak, biri özyinelemeli dışlamalar için kullanmak isteyebilirsiniz. Yukarıdaki, cygwin'de çalışan bir bash betiğindendir.

12
Tim Desjardins

Ne zaman kullandım

"C:\Program Files\7-Zip\7z.exe" a -r -ttar -xr!?git\* aufs2-util.tar aufs2-util\*

i̇stemediğim .git dizini ekleyerek sona erdi.

"C:\Program Files\7-Zip\7z.exe" a -r -ttar -xr!?git\ aufs2-util.tar aufs2-util\*

istenen sonucu aldım.

4
user28989

Ne zaman kullandım

7z a "D:\codebase\w.7z" "D:\codebase\Edison\otm\Webapp" -t7z -mx0 -xr!WEB-INF\*

wEB-INF dizini hariç tutulmadı. Dizin adından önce yıldız işareti ekleme

7z a "D:\codebase\w.7z" "D:\codebase\Edison\otm\Webapp" -t7z -mx0 -xr!*WEB-INF\*

İstenilen sonucu aldım.

3
Ashutosh Jindal

Benim için, bir grup maven kod dizinini yedeklemeye çalışıyordum ve "hedef" adındaki herhangi bir dizini dışlamak istedim:

"C:\Program Files\7-Zip\7z.exe" a -r -tzip -y -xr!*\target\* site.Zip C:\code\site\

İlgili hariç tutma parametresi -xr!*\target\* idi.

0
Kit Menke