Agendamento CRON / CRONTAB

1. Apresentação
CRON ou CRONTAB, é um agendador de tarefas, utilizado para executar algo automaticamente em determinados momento/tempo.

2. Configurando
O crontab tem seu funcionamento bem simples, mas requer atenção para a sua projeção.
Para editar ele, basta executar o comando:

# crontab -e

Irá abrir uma janela estilo o editor de texto “vi”.
Seus comandos são iguais ao “vi”, então, sem problemas …
INSERT – para editar
ESC – para finalizr edição
:x! – salvar e sair
:q! – sair sem salvar

* * * * * comando
| | | | | |_ _ _ _ Comando a ser executado
| | | | |_ _ _ _ _ Semana (0-7 – domingo à domingo)
| | | |_ _ _ _ _ _ Mês (01-12)
| | |_ _ _ _ _ _ _ Dia (01-31)
| |_ _ _ _ _ _ _ _ Hora (00-23)
|_ _ _ _ _ _ _ _ _ Minuto (00-59)

2.1. Minuto
Varia de 00 à 59

2.2. Hora
Varia de (00 à 23)

2.3. Dia
Varia de 01 à 31
Lembrando sempre que ao executar uma tarefa nos dias acima de 28, essa tarefa não será executa no mês de fevereiro.
Usando o dia 31, você irá eliminar todos os meses que terminam em 30 ou menos.

2.4. Mês
Varia de 01 à 12
Podendo também ser usando nomes em inglês (digitados em MAIÚSCULOS ou minúsculos).
Use apenas as 3 primeiras letras do nome.

2.5. Semana
Varia de 0 à 6 ou 1 à 7
Sendo, assim: 0 à 6 de domingo à sábado ou 1 à 7 de segunda à domingo.
Podendo também ser usando nomes em inglês (digitados em MAIÚSCULOS ou minúsculos).
Use apenas as 3 primeiras letras do nome.

2.6. Comando
O comando é você que define, é importante lembrar que o “%” (porcento) é usado para quebra de linha, então, caos você queira usá-lo, digite: “\%”, usando a “\” barra invertida antes.

3. Caracteres especiais
Você pode também trabalhar com “coringas”, veja abaixo alguns exemplos.

3.1. Usando “*”
Executar uma tarefa (“echo teste”) sendo que por 10 minutos, usando o “*”, seja:
–> 10 * * * * echo teste

3.2. Usando “/”
Executar uma tarefa de 5 em 5 minutos, usando o “/”, seja:
–> */5 * * * * echo teste

3.3. Usando “/”
Executar uma tarefa de 5 em 5 minutos durante os 30 primeiros minutos, usando o “/”, seja:
–> 0-30/5 * * * * echo teste

3.4. Usando “-“
Executar uma tarefa no período de 0 à 5 minutos, usando o “-“, seja:
–> 0-5 * * * * echo teste

3.5. Usando “,”

Executar uma tarefa no minuto 1, 3 e 5, usando a “,” (vírgula), seja:
–> 1,3,5 * * * * echo teste

4. Exemplo
Executando uma tarefa dia 15/03, quando for segunda-feira, no horário das 23h e 54min.

54 23 15 03 01 echo “Exemplo de tarefa”
| | | | | | _ _ _ _ Comando a ser executado
| | | | |_ _ _ _ _ _ Semana
| | | | _ _ _ _ _ _ _ Mês
| | |_ _ _ _ _ _ _ _ _ Dia
| | _ _ _ _ _ _ _ _ _ _ Hora
|_ _ _ _ _ _ _ _ _ _ _ _ Minuto

Creditos: www.emota.com.br/linux/crontab.html

Rudimar Remontti

Trabalho atualmente como Gerente de Redes em um Provedor de Internet no Rio Grande do Sul.

Você pode gostar...

3 Resultados

  1. Marco Túlio Lacerda disse:

    na minha pasta raiz do servidor esta gravando o nome das paginas em arquivos em cada cron que executa e tambem enviando emails o que pode fazer pra nao retornar isso??

  1. 24 de outubro de 2018

    […] é colocar ele no seu CRON para executar a cada 15 […]

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *