
Tenho uma situação em que preciso executar um script e excluir arquivos específicos de um arquivo zip. Abaixo está a configuração geral
/mnt/directory
/mnt/directory/Folder1
/mnt/directory/Folder1/file1.zip
/mnt/directory/Folder1/file2.zip
/mnt/directory/Folder2
/mnt/directory/Folder2/Documents
/mnt/directory/Folder2/file1.zip
/mnt/directory/Folder2/file2.zip
Então, dentro de cada arquivo zip, há vários arquivos e diretórios. Pode haver mais de 20 diretórios profundos, então preciso ter certeza de que tudo o que faço analisa recursivamente os arquivos.
Eu joguei com ozipinfo -1 /mnt/diretório/Pasta1/arquivo1.zip '.txt'* comando ele encontra todos os arquivos .txt no arquivo1.zip, mas não consigo usar o curinga do comando zipinfo para fazer com que ele pesquise todos os arquivos zip. Além disso, ainda preciso excluí-los após o fato. Eu também testeizip -d /mnt/diretório/Pasta1/arquivo1.zip nome do arquivo.txt. Isso funciona bem para 1 arquivo e apenas 1 arquivo, desde que não esteja dentro de uma pasta. Então, novamente, não é o ideal para minha situação.
Posso descompactá-los se necessário, mas prefiro não, pois alguns são muito grandes e terei que zipá-los de qualquer maneira.
Obrigado.
Responder1
O móduloArquivo::Zipparece que fará o que você precisa.