7Zip - Linha de Comando: Excluir pasta (s) por padrão curinga?

97

Alguma idéia de como excluir um caminho wild-card (s) de um comando 7zip da linha de comando?

Estou fazendo algo assim:

7z.exe a -t7z archive.7z FolderToArchive\ -mx0

e gostaria de excluir as pastas \bin\*.* ou \obj\*.* encontradas abaixo de "FolderToArchive". Para excluir arquivos, você pode usar o parâmetro -x . O arquivo de ajuda fornece este exemplo para usar -x :

7z a -tzip archive.zip *.txt -x!temp.*

Isso é ótimo para excluir um arquivo. Mas, novamente, gostaria de excluir uma pasta especificada pelo caractere curinga. Sob o meu "FolderToArchive" existem várias pastas, nessas pastas podem ou não ser bin\ e obj\ pastas. Eu gostaria de não incluí-los no arquivo.

Eu tentei padrões como:

-x!bin\* %código% %código% %código% %código% -x!bin\*.*

Nenhum parece excluir. Isso é simplesmente uma limitação de 7zip?

    
por Yoopergeek 18.01.2010 / 16:37

2 respostas

117

Para excluir as pastas bin e obj recursivamente, você pode usar o comando:

7z.exe a -t7z archive.7z FolderToArchive\ -mx0 -xr!bin -xr!obj
    
por 18.01.2010 / 16:53
11

Para evitar erros, use -r ou -xr com cuidado.

suponha que você tenha diretórios como:

.\path1\path2\bin
.\path1\path2\src
.\path3\path4\path5\bin
.\path3\path4\path5\src

e execute o comando:

7z a -t7z archive.7z .\path1\path2 .\path3\path4\path5 -xr!bin

o que você tem no arquivo.7z:

.\path2\src
.\path5\src

Ou seja, .\path2\ e .\path5\ tornaram-se a pasta superior no archive.7z e os dois diretórios bin foram excluídos.

-x só suporta caminho / nome de arquivo relativo para a pasta de topo no arquivo.

Então, se você quiser excluir apenas .\path1\path2\bin , mas para incluir todos os outros diretórios 'bin', o comando deve ser assim:

7z a -t7z archive.7z .\path1\path2 .\path3\path4\path5 -x!path2\bin

Eu tentei usar o caminho absoluto em -x, mas nunca consegui.

Atualização:

Existe uma opção -spf em 7z para o Linux, que funciona com o caminho absoluto.

De acordo com o Marco , o -spf também está disponível no Windows a partir do 7-zip 15.14

    
por 01.03.2014 / 11:27