Respostas:
Como acompanhamento da resposta do surfasb , adicione um sinalizador -r no final para recursar:
7z e [archive.zip] -o[outputdir] [fileFilter] -r
Suporte a vários filtros:
7z e [archive.zip] -o[outputdir] [fileFilter_1] [fileFilter_2] -r
Exemplo:
Linha de comando de vários filtros:
7z e archive.zip -o outputdir *.xml *.dll -r
PS: Eu uso o 7za.exe em vez do 7z.exe. Este é o comando real que eu uso no meu script:
7za.exe x archive.zip -o outputdir *.xml *.pdb *.exe *.ocx *.dll -r
SubArchive.zip
do MainArchive.zip
no seu caso. Você pode executar um acompanhamento comando para extrair MyFile.txt
a partir SubArchive.zip
após a extração inicial.
Você acabou de adicionar o nome do arquivo no final.
7z e [archive.zip]
-o [outputdir] [fileFilter]
.XML
e .zip
? Desculpe se estou sequestrando este tópico, mas não queria adicionar uma pergunta duplicada.
Se você olhar a página de manual para 7z, verá que o seguinte comando pode ser usado para extrair um arquivo de um arquivo 7z (embora o uso do caminho esteja ausente na página de manual):
7z x <archive> <path to file>
Exemplos:
7z x backup.7z *.html
7z x backup.7z folderwithin/myfile.html
Alternativamente, você pode usar e
.
O guia do usuário da versão da linha de comando parece ter mais informações sobre o uso real.
Observe que 7z
tem a seguinte sintaxe (observe os espaços e as aspas que cercam a "-oMy Folder"
opção de definir o nome da pasta de saída, levei horas para descobrir, como fiz originalmente - da maneira errada: * -o "My Folder"
*):
7z e "my zip.zip" "-oMy Folder" *.jpg "all of these.*" -r
.XML
e.zip
? Desculpe se estou sequestrando este tópico, mas não queria adicionar uma pergunta duplicada.