Aprenda a programar acciones en Linux con Cron
Cron es un servicio Unix que permite que el demonio cron ejecute tareas en segundo plano a intervalos regulares. Estas tareas suelen denominarse «trabajos cron» en Unix. Vea cómo usarlo.
O Cron é um mecanismo que permite agendar tarefas que tem como base o tempo em sistemas operativos baseados no Unix ou Linux. Permite que os utilizadores programem tarefas (comandos ou scripts) para serem executadas periodicamente em horários, datas ou intervalos fixos. Essas tarefas agendadas são designados de "cron jobs" e podem automatizar tarefas repetitivas como manutenção do sistema, backups, atualizações e muito mais.
Os "cron jobs" estão constantemente a verificar o ficheiro /etc/crontab e os diretórios /etc/cron.* e /var/spool/cron/. O crontab é o método para criar, editar, instalar, desinstalar e listar os "cron jobs".
Sintaxe do Crontab no Linux
O ficheiro do crontab é composto por cinco campos para especificar o dia, a data e a hora seguido pelo comando a ser executado.
- Minutos (0-59)
- Hora (0-23)
- Dia do mês (1-31)
- Mês (1-12 ou jan-Dez)
- Dia da semana (0-7 ou dom-sáb, onde 0 e 7 representam domingo)
A sintaxe deverá ser igual à apresentada na imagem seguinte.
Além disso, há uma sintaxe especial para definir intervalos e faixas:
- Asterisco (*) significa todos os valores possíveis dentro de um campo.
- Vírgulas (,) separam múltiplos valores dentro de um campo.
- Hífens (-) especificam faixas de valores.
- Barras (/) indicam valores de passo.
Exemplo de Crontab
Uma linha no crontab como a que está em baixo remove os ficheiros temporários de /home/someuser/tmp each day às 18:30 de cada dia.
30 18 * * * rm /home/someuser/tmp/* |
Cambiar los valores de los parámetros, como se muestra a continuación, hará que este comando se ejecute en diferentes momentos (o fechas):
mín| tiempo| día del mes | mes| día de la semana | fecha/hora de ejecución
30 0 1 1,6,12 * — 00:30 Hrs no 1º de jan, junho e Dez. 0 20 * 10 1-5 –8.00 PM todos os dias da semana (seg-sex) apenas em outubro. 0 0 1,10,15 * * — meia noite no 1º, 10º e 15º dia do mes. 5,10 0 10 * 1 — às 12:05 e 12:10, todas as segundas e no 10º dia de cada mês. |
Nota : Si accede inadvertidamente al crontab sin argumentos, no presione Control-d para salir. Este comando eliminará todas las entradas de crontab. Haz Control-c para salir.
comandos crontab
Antes de comenzar a crear "cron jobs" debes elegir con qué editor de texto trabajarás. Por ejemplo, usar el comando "exportar EDITOR=nano" usará nano al editar el archivo crontab.
- crontab-e
- Edite el archivo crontab o cree uno si aún no existe.
- crontab-l
- Muestra el contenido del archivo crontab.
- crontab-r
- Elimine el archivo crontab.
- crontab-v
- Muestra cuándo se editó por última vez el archivo crontab. (Solo disponible en algunos sistemas)