Você poderia começar dizendo find /var/dtpdev/tmp/ -type f -mtime +15. Ele encontrará todos os arquivos com mais de 15 dias e imprimirá seus nomes. Opcionalmente, você pode especificar -printno final do comando, mas essa é a ação padrão. É recomendável executar o comando acima primeiro, para ver quais arquivos estão selecionados.
Depois de verificar se o findcomando está listando os arquivos que você deseja excluir (e nenhum outro), você pode adicionar uma "ação" para excluir os arquivos. As ações típicas para fazer isso são:
-exec rm -f {} \;(ou, equivalente -exec rm -f {} ';')
Isso será executado rm -fem cada arquivo; por exemplo,
rm -f /var/dtpdev/tmp/A1/B1; rm -f /var/dtpdev/tmp/A1/B2; rm -f /var/dtpdev/tmp/A1/B3; …
-exec rm -f {} +
Isso será executado rm -fem muitos arquivos ao mesmo tempo; por exemplo,
rm -f /var/dtpdev/tmp/A1/B1 /var/dtpdev/tmp/A1/B2 /var/dtpdev/tmp/A1/B3 …
portanto, pode ser um pouco mais rápido que a opção 1. (Pode ser necessário executar rm -falgumas vezes se você tiver milhares de arquivos.)
-delete
Isso diz findpara excluir os arquivos, sem executar rm. Isso pode ser infinitesimalmente mais rápido que as -execvariantes, mas não funcionará em todos os sistemas.
Portanto, se você usar a opção 2, todo o comando seria:
find /var/dtpdev/tmp/ -type f -mtime +15 -exec rm -f {} +