2015-04-20 2 views
4

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

Я пробовал -x!".*", но это не сработало.

+0

Если вы знаете структуру скрытого файла, то его очень легко, как .svn или .git и т.д .. но если нет никакой закономерности в этом случае вы должны пойти для постановки , –

ответ

8

Необходимо добавить флаг r ("recurse") в опцию -x, если вы хотите, чтобы он соответствовал файлам внутри подкаталогов.

Например, следующий создает архив из всего дерева каталогов под folder/ для всех файлов, которые начинаются с точки, за исключением:

7z a -xr'!.*' archive.7z folder/ 
+0

n.b .: Обратите внимание, что восклицательный знак должен быть указан для bash и zsh. – smls

5

У меня была такая же проблема на окнах 7 64bit 7zip.

После выполнения некоторых исследований я обнаружил следующее:

1) одиночные/двойные кавычки "" не работает на окнах - 7zip говорит неправильно wirdcard

2), за исключением на основе файла/атрибутов папки является не представляется возможным - только вариант либо исключить с дикими картами или сделать список исключений

3) в опции -x, файл обозначается как < путь> \ < fileName.Ext> и папку, как < путь> \. < папка>/(с косой чертой в конце)

4) формат 1: с! знак (рисунок непосредственно с командой), вы можете дать что-то вроде:

a) 7z a -xr!<path>\<folder to exclude>/ archive.7z <zip folder>/ 

Это исключает .svn папку в любом пути из папки почтового индекса рекурсивен

b) 7z a -xr!*\.svn/ archive.7z <folder>/ 

5) Формат 2: с символом @ вы можете дать список исключений, как это:

a) 7z a [email protected]<7z exclude list file> <archive name>.7z <folder>/ 

где исключить список файлов может быть:

*\.svn/ 
    *\output/ 
    *\Document/ 
    *\Measurements/ 
    *.xlsx 
    *.bak 

мой любимый вариант заключается в использовании список исключений

Смежные вопросы