Você pode fazer o seguinte:
find . -name '*log' -mtime +30 -print0 | tar -czvf backup.tgz --remove-files --null -T -
Com:
-
find
opções:-
-name '*log' -mtime +30
: seleciona arquivos de log com mais de 30 dias -
-print0
: imprime o nome completo do arquivo na saída padrão, seguido por um caractere nulo
-
-
tar
opções:-
--remove-files
: remova os arquivos depois de adicioná-los ao arquivo -
--null
: lê nomes com terminação nula (enviados porfind -print0
) -
-T -
: lê nomes de arquivos de stdin (saída defind
)
-