if ($answer_counter == 1): ?>
endif; ?>
1. Descompacte todos os .zip archives
find . -type f -name "*.zip" -exec unzip {} +
Explicações
-
find . - procura no diretório atual
-
-type f - arquivos
-
-name "*.zip" - cujo nome corresponde a *.zip (assim termina em .zip ),
-
-exec unzip {} + - crie uma longa lista de todas as correspondências e execute unzip
2. Mova todos os arquivos dos níveis mais baixos para um nível abaixo do atual
for i in */; do find "$i" -type f -exec mv {} "$i" \; && rm -r "$i"*/; done
Explicações
-
for i in */; do …; done - percorre todos os diretórios no nível atual
-
find "$i" -type f - procura todos os arquivos no diretório atualmente processado e abaixo
-
-exec mv {} "$i" \; - mova-os para o diretório atualmente processado
-
&& faz o seguinte apenas se o comando anterior tiver terminado com sucesso
-
rm -r "$i"*/ - remove todos os subdiretórios no diretório atualmente processado