terça-feira, 27 de agosto de 2013

Agendar tarefas (Crontab) no Linux Ubuntu

Olá pessoal,

Estou disponibilizando um tutorial sobre a crontab, agendador de tarefas do Linux, lembrando que o crontab existe em qualquer versão do linux. A crontab server para agendar execuções de taferas como jobs, scripts e etc...
Com a crontab é possivel especificar horários como “todos os dias ás 3:30 da manhã” ou “a cada 5 minutos”, “de 5 em 5 minutos”.


Devemos então acessar o seguinte diretório do Linux:

/etc

Dentro deste diretório, possui o seguinte arquivo: 

Crontab

Devemos então editar o mesmo com o seguinte comando:

vi crontab

ou

vim crontab

Notem no conteúdo:


# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.



SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:

/usr/bin


# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#



Notem que já existe algumas entradas justamente dos diretórios especiais, para adicionar sua própria tarefa temos que seguir o seguinte padrão de linha:

minuto hora diadomês mês diadasemana usuário comando

Devemos para cada espaço, se avança um campo e os campos seguem o padrão existente que conhecemos, por exemplo no campo mês não pode ter 15 pois temos de 1-12 e o campo da semana usamos de 0 a 7 onde zero e 7 é domingo 1 é segunda-feira, 2 terça-feira e assim por diante.
Temos também alguns caracteres que facilitam a vida:

Caractere Exemplo Siginificado
Hífen 2-4 intervalo de 2 a 4
virgula 2,4,6,8 os números 2,4,6 e 8
barra */10 de dez em dez
asterisco * todas as opções possiveis




Nenhum comentário:

Postar um comentário