Você está na página 1de 19

Agendamentodetarefas

Agendamentodetarefas

Introduo

Oqueocron?

Nadamaisdoqueaagendadosistemaparadeterminartarefasaserem
executadasemhorriosespecficos.Nocasodocron,podemosagendardiversas
tarefasadministrativas,comoporexemplo:desligarosistema,fazerumbackup,
mandarmensagensnosistemaemumdeterminadodiaouhorrioemque
desejarmosqueocorraessatarefa.
Vamossuporquevocresolveuserumapessoamaisorganizada,e,cansadode
perderseusarquivosdeconfigurao,resolveufazersempreumbackup,afinalde
contasmelhorprevenirdoqueremediar!Squevocnoquerficarsempre
lembrandodissoejustamenteaqueentraemcenaocron,queirsempre
verificaraagenda,chamadacrontab,oqueoshellprecisaexecutar.
Agendamentodetarefas

Entendendoocron

Temosqueentenderaestruturadocrontab,ousejadaagendadocron!
Ocrontabtemaseguinteestrutura:

* * * * * Tarefa

Emumprimeiromomento,difcildeentenderaestruturadocrontab,porm
vamosdetalharelaaseguir.
Agendamentodetarefas

Estruturadocrontab

Parapoderescreversuatarefa,necessrioentenderoquesignificacada
campopresentenocrontab,quesoseparadosporespaosoupelatecla<TAB>.
Seriaassim:

*****tarefa
||||||_____Tarefaaserexecutada
|||||________Diadasemana(07)
||||___________Ms(112)
|||______________Diadoms(131)
||_________________Hora(023)
|____________________Minuto(059)
Agendamentodetarefas

Valoresdascolunasdocron

Minuto
Variade0059
Hora
Variade0023
Dia
Variade0131

OBS:Lembrandosemprequeaoexecutarumatarefanosdiasacimade28,
essatarefanoserexecutadanomsdefevereiro!

Ms
Variade0112
Agendamentodetarefas

Valoresdascolunasdocron

Semana
Variade06oude17

Ficaassim:
06significaquedeDomingoaSbado
17significaquedeSegundaaDomingo
Ouseja,tantoovalor0quantoovalor7Domingo!

Tarefa
atarefaquevaiserexecutada.
Agendamentodetarefas

Oscoringasdocrontab

Coringa*

Paraajudarnoagendamentodetarefaspodemosusaroscoringas,queso
caracteresespeciaisdeterminadosnoagendamentodeumaoumaistarefas.

Porexemplo:devemosterumatarefaquedesligueocomputadortodososdias
s22horas.Aoinvsdedigitartodososdiasdoms,todososmesesetodosdias
dasemana,fazemosissousandoumnicocaractere,queindiquetodosemcada
campoespecfico;nonossocaso,seriaocaracter*.
Agendamentodetarefas

Oscoringasdocrontab

Coringa*

Vamosexecutarumatarefa(echoEstoutestandoocron>/dev/tty1),
enviandoasadadessecomandoparaoterminaltexto1emcadahora,ousejas
13:10,s14:10,eassimpordiante:
10****echoEstoutestandoocron>/dev/tty1

Ocoringa"/"

Comessecoringa,podemosexecutarporexemploumatarefade5em5
minutos:
*/5****echoEstoutestandoocron>/dev/tty1
Agendamentodetarefas

Oscoringasdocrontab

Ocoringa""
Aqui,podemosexecutarumatarefadentrodeumcertointervalo,porexemplo
de05minutos:

05****echoEstoutestandoocron>/dev/tty1

Ocoringa","
Esseumcoringaondepodemosexecutarumatarefaemtemposintercalados!

Porexemplo,nominuto1,3e5:
1,3,5****echoEstoutestandoocron>/dev/tty1
Agendamentodetarefas

Oquefizemosagorafoicolocarnaagendadocron,paraque,todasexta,s18
horas,sejafeitoobackupdodiretrio/etc,usandootarcomogzip.
Feitoisso,podemossalvaroarquivoesaireaguardarohorrioparaqueo
computadorexecuteatarefanohorrioquepedimos.
Valelembrarqueanossaagendasemprevaiexecutaratarefaquepedimosse
elaobedeceraumacondio.

Porexemplo:
Queroquesejamostradonatelas17horasaseguintemensagem:Hoje
SexJul2917:00:00BRT2005;ouseja,mostreasadadocomandodate;
porm,odiatemquesersextaetemquesernoms07,nodia29etemqueser
17horas!
Agendamentodetarefas

Atarefaanteriorficariaassim:
0 17 29 7 5echoHoje`date`

Issoquerdizerque,s17horas,dodia29/07,sermostradaamensagem
HojeSexJul2917:00:01BRT2005.

Nocaso,anossamensagemsvaiserexibidanocomputadornovamente
daquiaseisanosquandofordenovo29/07,sextafeiraefor17horas!
Agendamentodetarefas

Consultandoastarefas

Ocrondeveconsultaroquefoiescritonocrontabparaverseoquepedimos
vaiserexecutadopeloshell.Paraverentoessaagenda,usamosocomando:

#crontabl

Ondeoldelist.Ouseja,memostreoquetemnaagenda.Todasastarefas
agendadassolocalizadasdentrododiretrio/var/spool/cron/crontabsno
sistema.
Eapodemosverseoquefoiagendadoestnohorriocerto;setudoestiver
ok,saguardarocronordenaraoshellqueexecuteoquepedimos,ouseja,oque
estdentrodaagenda!
Agendamentodetarefas

Apagandoastarefas

Paradeletartodasastarefasagendadasnocrontab,temososeguinte
comando:

#crontabr

Ondeaoporpararemover,ouseja,apagaraagendadocron.
Agora,sevocquisersimplesmenteremoverapenasumatarefa,bastaabrir
novamenteaagendacomocomandocrontabeeapagaratarefaqueestava
agendadal!
Agendamentodetarefas

Oarquivo/etc/crontab

Oroot,comoadministradordosistema,temaagendaindividualdele,onde
podeguardarosseuscompromissosetemaagendaglobal,queondeeleanotaos
compromissosqueseroexecutadosporumdeterminadousurio!
Ouseja,ocompromissoqueorootanotarnaagendaglobal,vaiserexecutado
porumusurioquepodeserelemesmoouumusuriomortal!Essaagenda
global,ficano/etc/crontab.
Diferentedaagendaindividual,essaagendatem7camposaoinvsde6!Eo
campoamaisquetemosnessaagenda,ocampouser.

Essaagendaglobaltemaseguinteestrutura:
mhdommondowusercommand
Agendamentodetarefas

Oarquivo/etc/crontab

Bom,nessaestruturatemos:

m=minuto(059)
h=hora(023)
dom=indicadiadoms(dayofmonth)
mon=aquiestindicandoms(month)
dow=indicadiadasemana(dayofweek)
user=qualusurioserodonodessatarefa
command=tarefaqueserexecutada
Agendamentodetarefas

Oagendadorat

Vamosconheceragoraoutroagendadordosistema,oat.Eletambmtema
mesmafunoqueocron,ouseja,elecuidaparaqueoshellexecuteastarefas
queforamagendadas,maselebemdiferentedocron.
Paraseterumaidia,nemumaagendaespecfica(arquivodeconfigurao)ele
possui!Eleguardaastarefasquedevemserexecutadaspeloshellnodiretrio
/var/spool/cron/atjobs.
Squeoatsvailembraroshelldeexecutaratarefaapenasumavez!E
aqueelediferentedocron,porquenaagendadocron,oqueestivermarcado
l,elesemprevaiexecutar!Joatno,executouumavez,noexecutadenovo!
Nodeixandooatdelado,eletambmtemsuaimportncia!Elesertil
quandoquisermosqueumatarefasejafeitaapenasumanicavez!
Agendamentodetarefas

Oagendadorat

Porexemplo:

#echoOatnoeet>at.txt|at02pmtoday

Repareque,apesardenoexigirqueoshellrefaaatarefadentrodoquefoi
especificadocomoocron,oatdetalhistanaquestodehorrios.
Acima,noexemplo,estamospedindoparaquehoje,s14horas,mostrea
mensagemOatnoetejogueessamensagemnoarquivoat.txtdentrodo
/tmp.E,paraquenoaconteaerros,eutenhoquefalarparaoat,que2horas
datarde(porissoopmdoladodo02)dehoje(today).
Agendamentodetarefas

Oagendadorat
Vendoatarefaagendada

Oat,assimcomoocron,tambmmostraalistadecoisasqueofuncionrio
shelldevefazer.Eessalistamostradacomocomando:
#atq
Sendoquenessalistaqueoatmostra,cadatarefatemoseunmero,equeno
deveserconfundidocomoPID!Onmeroqueaparecernalistaoprprioatque
fornece.
Agora,sevocerrarquandoagendaratarefanotemcomoeditaroarquivo,
temqueremoveratarefaeadicionarnovamente!
Paraisso,bastapegaronmerodatarefa,eusarocomando:
#atrmnmero_da_tarefa
Bibliografia

LinuxGuiadoAdministradordoSistema
Autor:RubemE.Pereira
Editora:Novatec

ManualCompletodoLinux(GuiadoAdministrador)
Autor:EviNemeth,GarthSnyder,TrentR.Hein
Editora:PearsonBooks

GuiaFocaGNU/Linux
http://focalinux.cipsga.org.br/

Você também pode gostar