28
ago 13

[Dica] Extrair uma lista de arquivos ZIP em diretórios separados

Dica rápida.

Precisei extrair uma lista de arquivos JAR, mas queria todos nos diretórios com seus nomes. Usando Linux ou Mac OS X.

Por exemplo: asm.jar, dwr.jar e xdoclet.jar nas pastas

asm/
dwr/
xdoclet/
for i in *.zip; do unzip -d "${i%*.zip}" "$i"; done

Explicando:

for i in *.zip

> Lista os arquivos zip, jar, etc, o que for, e a cada iteração do for guarda o nome do arquivo na variável i.

unzip -d "${i%*.zip}" "$i"

> Parâmetro -d cria o diretório usando o nome do arquivo que está na variável i, mas removendo o .zip do final. O último parâmetro pode  “$i” informa o nome do arquivo a ser descompactado.

É isso.

Abs.


10
jun 12

Comando para remover os arquivos SVN de um diretório

Esse comando é útil para remover todos os arquivos .svn do diretório atual recursivamente. Facilita bastante quando você quer limpara um projeto obtido do SVN ou quando você quer incluir um diretório de um repositório SVN em outro repositório.

find . -iname .svn | xargs rm -rf

Pequena explicação:

find . -iname .svn: encontra todos os arquivos ou diretórios com o nome .svn
xargs rm -rf: o xargs executa o comando que apaga (rm) todos os .svn listados

Obs.: Funciona bonito tanto no Linux quanto no Mac OS X. 😉

Abs.