Agendando tarefas com o crontab

Muitas vezes precisamos agendar tarefas que usamos regularmente para uma execução automática e para isso o cron é uma ótima solução. Com ele você pode agendar tarefas com data e hora marcadas, confira como nesse artigo.

[ Hits: 165.495 ]

Por: Diogo Menezes em 21/03/2005 | Blog: http://www.diogomenezes.com


Introdução



O cron é um ótimo agendador de tarefas, com ele você pode agendar para um determinado momento um programa qualquer a ser executado.

Sua aplicação é diversa, pois pode ser utilizado, por exemplo, em manutenção, criação de arquivos de backup, logs e muitas outras coisas.

O cron é incluído por padrão na maioria das distribuições e é de muito fácil uso, por isso não será difícil para que você possa aplicá-lo em seu dia-a-dia.

Sintaxe:

crontab -parâmetro

Parâmetro Função
-e Edita lista de tarefas agendadas
-l Exibe a lista de tarefas agendadas
-d Remove as tarefas agendadas


    Próxima página

Páginas do artigo
   1. Introdução
   2. Entendendo o agendamento
Outros artigos deste autor

Mplayer - Instalação e utilização

Linux, porque não?

Criando e fechando portas no seu Linux

Configurando o Velox no seu Linux

Usando direcionadores de fluxo

Leitura recomendada

Raspberry Pi: Central Multimídia com OpenELEC

Criando um banco de dados para obter ajuda do sistema

Alta Disponibilidade (HA) com Debian (Heartbeat + DRBD + Mon)

Conceitos de criptografia com chave simétrica e assimétrica

Configurando dispositivo CD-R/CD-RW e gravando CD em modo texto

  
Comentários
[1] Comentário enviado por vagnerd em 22/03/2005 - 15:04h

Bom artigo xD e bem simples!

Parabens!

[2] Comentário enviado por agk em 31/03/2005 - 19:01h

Parabéns, bem explicado a parte do agentamento.

[3] Comentário enviado por kamal em 20/03/2006 - 12:14h

Ficou muito legal cara, tava precisando de um artigo assim como o seu: simples e que ensina de maneira rapido. Parabens.

[4] Comentário enviado por fchevitarese em 21/02/2007 - 08:37h

será que vc pode me ajudar? eu tenho um script de minha autoria que não funciona no crontab!
já dei todas as permissões, no próprio cron especifico o usuário que pode executá-lo mas nada acontece!

Gostaria de saber se vc pode me ajudar, pois outras coisas funcionam no cron!

Vlws

[5] Comentário enviado por emmacedo em 21/07/2008 - 13:48h

Olá, estou com uma dúvida, será que se eu colocar */15 para o "Dia do Mês" ele vai rodar de 15 em 15 dias?

[6] Comentário enviado por othelo em 23/07/2008 - 17:12h

Putz cara... esse artigo quebrou meu galho... tava precisando montar um agendamento e foi precioso o roteiro do crontab...
valeu mesmo.. abracos

[7] Comentário enviado por marcelovegano em 10/10/2008 - 19:54h

Vou testar hoje isso...vamos ver se funciona mesmo...HUHUIuihiuhUhUI

[8] Comentário enviado por almirneo em 07/11/2008 - 16:41h

Vlw mesmo cara, ótimo artigo, direto e objetivo.
Eu estava tentando editar o arquivo /etc/crontab pelo vi e não dava certo ele não agendava a tarefa, mas através do crontab -e deu certinho.
vlw mesmo.

[9] Comentário enviado por gersonraymond em 16/02/2009 - 07:03h

Muito bem explicado, parabéns contínuo para este artigo.

[10] Comentário enviado por guiguix em 22/07/2009 - 15:24h

Só pra constar, podemos deixar que o próprio site tenha vida própria, executando os scripts php (ou ASP, ou ainda JSP, etc etc etc) de modo automático:
AGENDAR O BACKUP OU ENVIO DE E-MAILS ATRAVÉS DO PHP:
$crontab -e
*/5 * * * * wget -q -O /dev/null http://[meusite.com.br]/[minhapasta]/meu_arquivo.php

// exemplo adaptado do site do moodle - instalação

Ou seja: o programa wget baixa o "meu_arquivo.php", quando acessa, executando os comandos php deste arquivo! Assim o site terá "vida própria".
Nota: Se preferir, faça um .htaccess liberando o acesso da pasta [minhapasta] apenas para a máquina responsável pelo carregamento do script, que no meu caso foi a localhost (muitas vezes o próprio serviço de hospedagem oferece o serviço cron [no cPanel] ).

[11] Comentário enviado por volcom em 22/03/2010 - 09:32h

O campo dia da semana pode ser usado também de 0 à 7, onde 0 e 7 representam o domingo.

[12] Comentário enviado por removido em 04/01/2011 - 03:21h

Meu velho um erro no seu artigo...

Na verdade não será "provavelmente o VI" mas sim o editor que estiver por default(padrão) e caso você não seja muito "enturmado" com o VI apenas mudo o editor padrão com o comando:

eu@px:#~select-editor

[13] Comentário enviado por cngbinho em 22/06/2011 - 17:01h

Ola, galera eu to com um problema para cria um cron.
Eu preciso entender o que esse exemplo ai abaixo faz por que eu preciso criar um igual.
Eu ja inseri uma linha no no crontab igual mais não me acontece nada..
Alguem que tenha conhecimento pode me explicar melhor esse cron?
E como faço para saber se ta rodando o cron, eu usu o ubunto.

0 * * * * cd '/home/wwwbara/public_html/' php -q chechupdate.php -p processqueue > /dev/null ;


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts