find /path/to/dir -mtime +5 -exec mv {} /target/path/ ';'
moverá todos os arquivos em /path/to/dir
com mais de cinco dias para / target / path.
Você pode tentar isso para ver o que realmente será executado:
find /path/to/dir -mtime +5 -exec echo mv {} /target/path/ ';'
Observe que o parâmetro -mtime
verifica a hora da modificação do arquivo. Dê uma olhada em -ctime
ou -atime
na página de localização do para obter mais detalhes.
Se você quiser especificar seus tempos em minutos, use um dos -mmin
, -cmin
e -amin
.
Para encontrar arquivos com menos de um período de tempo específico, use -
em vez de +
, por exemplo, -mmin -30
.
Outro método seria usar xargs
(que executará um comando com cada uma de suas linhas de entrada; manpage ):
find /path/to/dir -mtime +5|xargs -i echo mv {} /target/path
(remova o 'eco' para realmente mover as coisas)