Как я использую с 7 zip для файлов резервных копий, но исключаю некоторые каталоги

Я хотел бы использовать с 7 zip для резервного копирования каталога, но я хотел бы, чтобы он исключил все каталоги, названные ".svn" (где угодно в исходном дереве). Кто-либо знает, возможно ли это и в этом случае как?

43
задан 31.08.2011, 09:02

5 ответов

Для исключения всех .svn каталогов, необходимо добавить -xr!?svn\* переключатель

Например, следующее создаст резервное копирование C:\Project\To\Backup каталог, исключая любые папки, которые удовлетворяют ?svn:

"C:\Program Files\7-Zip\7z.exe" a -r -tzip -y -xr!?svn\* Project.zip C:\Project\To\Backup\*
35
ответ дан 07.12.2019, 08:40

Вместо того, чтобы использовать С 7 zip для исключения .svn (или потенциально _svn) папки я рекомендовал бы использовать команду экспорта svn (используйте svn.exe от SlikSVN) для экспорта рабочей копии во временную папку:

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

Затем используйте С 7 zip следующим образом:

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

Затем удалите папку подготовки.

Это - то, что я делаю для резервного копирования моих локальных рабочих копий.

13
ответ дан 07.12.2019, 08:40

Можно исключить файлы с 7zip использование списка файлов или каталогов:

/path/to7Zip/7z a -bd f:/backup/backup_2009-08-23_daily.zip home \
          '-xr@\path\to\backup_daily_exclude.lst'

Исключить файл похож:

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

Ключ является-xr и в особенности "r", который указывает, применяют исключить список рекурсивно, к каждому уровню каталога. Можно хотеть использовать 2, исключают списки файлов один для абсолюта и один для рекурсивных исключений. Вышеупомянутое из сценария удара, который работает в cygwin.

12
ответ дан 07.12.2019, 08:40

Когда я использовал

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

это закончило тем, что добавило .git каталог, который я не хотел, изменяя его на

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

получил желаемый результат.

4
ответ дан 07.12.2019, 08:40

Когда я использовал

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

каталог WEB-INF не был исключен. Добавление звездочки перед именем dir

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

Получил желаемый результат.

3
ответ дан 07.12.2019, 08:40

Теги

Похожие вопросы