Linux Linha de comando: sobrescrevendo recursivamente todos os arquivos com uma versão gzipada?

1
______________ myFolder

O que eu posso substituir com

por studiohack 30.07.2009 / 12:32

3 respostas

4

Você também pode tentar

 find myFolder -type f -exec gzip {} \; -exec mv {}.gz {} \;
    
por 30.07.2009 / 21:26
2

tente:

find myFolder -type f -exec gzip {} +
    
por 30.07.2009 / 12:38
1

Um simples, não muito elegante script bash é simplesmente cd in, gzip-los todos em um loop, e mv-los de volta (gzip por padrão remove o arquivo não-comprimido):

#!/bin/bash
cd myFolder
for f in 'find ./ -type f'
do
    gzip $f
    mv $f.gz $f
done

Coloque isso em um arquivo chamado "gzip_and_rename.sh" por exemplo, chmod -775 e execute-o como ./gzip_and_rename.sh (se estiver rodando a partir do próprio MyFolder, remova a linha "cd myFolder" do script). / p>     

por 30.07.2009 / 12:47