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.zipdo MainArchive.zipno seu caso. Você pode executar um acompanhamento comando para extrair MyFile.txta partir SubArchive.zipapós a extração inicial.
Você acabou de adicionar o nome do arquivo no final.
7z e [archive.zip]-o [outputdir] [fileFilter]
.XMLe .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 7ztem 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
.XMLe.zip? Desculpe se estou sequestrando este tópico, mas não queria adicionar uma pergunta duplicada.