Como configurar o cron job no Linux para excluir todos os arquivos regulares?

1

Eu preciso configurar um trabalho para excluir todos os arquivos regulares no diretório /home/admin no segundo dia de cada mês às 8h30. Parece um comando errado:

# crontab -e
30 08 02 * /bin/find /home/admin -type f -exec /bin/rm {} ";"
    
por Rui F Ribeiro 31.05.2015 / 09:19

2 respostas

1

Você precisa adicionar 30 08 02 * * e \;

# crontab -e
30 08 02 * * /bin/find /home/admin -type f -exec /bin/rm {} \;

Agora vai funcionar.

    
por 31.05.2015 / 09:21
2

O manual crontab(5) especifica cinco campos de tempo:

 field         allowed values
 -----         --------------
 minute        0-59
 hour          0-23
 day of month  1-31
 month         1-12 (or names, see below)
 day of week   0-7 (0 or 7 is Sun, or use names)

Seu exemplo tem apenas quatro .

Isso faria com que o cron job fosse executado corretamente:

30 8 2 * * /bin/find /home/admin -type f -exec /bin/rm {} ";"

Para uma limpeza mais eficiente e rápida:

30 8 2 * * /bin/find /home/admin -type f -print0 | xargs -0 rm
    
por 31.05.2015 / 12:37

Tags