Jump to content


Photo

Cgi Para Tarefa Cron


  • Faça o login para participar
8 replies to this topic

#1 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 07/05/2005, 08:41

Alguem tem um exemplo de como deve ser os codigos para scripts que vão rodar em tarefa cron para funções automaticas no site????
flw's
Editado pela equipe Forum Wmo, favor ler as regras.

#2 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 07/05/2005, 21:27

Pelo que eu sei, você terá que usar um while que verifica de X em X tempo um banbo de dados (por exemplo) para executar uma tarefa Y...

Usar o "time()" ou "sleep()" cai bem.

O "system" ou "exec" também será útil.

flw
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#3 prix

prix

    Duracell: E Duram, Duram, Duram...

  • Usuários
  • 562 posts
  • Sexo:Não informado
  • Interesses:keep walking ...
    jonny walker

Posted 07/05/2005, 22:52

Pelo que eu sei, você terá que usar um while que verifica de X em X tempo um banbo de dados (por exemplo) para executar uma tarefa Y...

Usar o "time()" ou "sleep()" cai bem.

O "system" ou "exec" também será útil.

flw

Ele esta perguntando como deve ser o padrao dos scripts q vao ser rodados com tempo programado pela Crontab do linux pelo q entendi e nao como fazer um script para executar no tempo escolhido acho...

De qualquer forma, o que roda na crontab roda em modo texto entao voce teria q fazer tudo via bash uma vez q ele rode no bash sem problemas ele ira rodar no crontab sem problemas tambem, desde que tenha permissão para o q va fazer.

Exemplo:

#!/usr/bin/perl

   ($seg,$min,$hora,$diam,$mes,$ano,$sdia,$diano,$isdst) = localtime(time);
   @nummeses = ("01","02","03","04","05","06","07","08","09","10","11","12");
   $ano += 1900;
   if ($min < 10) { $min = "0$min"; }
   if ($seg < 10) { $seg = "0$seg"; }

   open (TESTE,">>teste.txt");
   print TESTE "O crontab rodou: $diam/@nummeses[$mes]/$ano - $hora\:$min\:$seg";
   close(TESTE);
   exit;


esse codigo ira criar um arquivo chamado teste.txt mostrando a hora do servidor em que o crontab rodou para executar este arquivo.

basicamente voce pode fazer um script para enviar email, para mudar dados num banco de dados, etc...

seria mais funções q se faz automaticamente sem a necessidade de complemento humano. como ter q digitar algo no meio do processo.

Edição feita por: Whitesnake, 08/05/2005, 12:54.

print join'',(reverse  map{/d([a-z])d/}split/W/,'$5x6@314&60f%3i4#moo^1r2#moo^1p2')," ", pack ("B*",'01110000011001010111001001101100')," ", pack ("B*",'011011010110111101101110011010110110010101111001'), "n";
sleep 5;


E-Mails, topicos ou mensagens privadas não serão respondidas a menos que eu considere uma relevancia/necessidade na mesma.

#4 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 10/05/2005, 10:56

isso mesmo que quero prix
então, na verdade, nao posso carregar modulos e nem imprimir o header de html/texto
somente codigo puro neh????

flw
Editado pela equipe Forum Wmo, favor ler as regras.

#5 prix

prix

    Duracell: E Duram, Duram, Duram...

  • Usuários
  • 562 posts
  • Sexo:Não informado
  • Interesses:keep walking ...
    jonny walker

Posted 10/05/2005, 12:31

vc pode carregar codigo sim mas ele nao vai imprimir o codigo html no internet explorer de ninguem
ele vai so listar o html

o certo eh q nao tneha complemento humano tipo ter q digitar algo pra funcionar.

quanto ao html ele vai aparecer como se vc tivesse executado seu perl do activer perl via DOS

print join'',(reverse  map{/d([a-z])d/}split/W/,'$5x6@314&60f%3i4#moo^1r2#moo^1p2')," ", pack ("B*",'01110000011001010111001001101100')," ", pack ("B*",'011011010110111101101110011010110110010101111001'), "n";
sleep 5;


E-Mails, topicos ou mensagens privadas não serão respondidas a menos que eu considere uma relevancia/necessidade na mesma.

#6 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 10/05/2005, 15:14

Usar o "eval{}" é bom também.

Ele "desconsidera" erros caso alguma parte do script tenha.

flw
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#7 prix

prix

    Duracell: E Duram, Duram, Duram...

  • Usuários
  • 562 posts
  • Sexo:Não informado
  • Interesses:keep walking ...
    jonny walker

Posted 10/05/2005, 20:47

nao eh bom ter erros em script de console nao. entao nem eh bom usar eval.

print join'',(reverse  map{/d([a-z])d/}split/W/,'$5x6@314&60f%3i4#moo^1r2#moo^1p2')," ", pack ("B*",'01110000011001010111001001101100')," ", pack ("B*",'011011010110111101101110011010110110010101111001'), "n";
sleep 5;


E-Mails, topicos ou mensagens privadas não serão respondidas a menos que eu considere uma relevancia/necessidade na mesma.

#8 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 11/05/2005, 12:39

pra que server esse eval e como uso ele
flw?}
Editado pela equipe Forum Wmo, favor ler as regras.

#9 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 11/05/2005, 16:06

O "eval{}" executa um interpretador a parte para passar reto pelos erros possiveis.

Exemplo:

eval {
require "$script";
}

Logo, se o $script não existir, possivelmente vai dar erro no script, porém com o eval esse erro será "ignorado" e o script continua sua execução normalmente.

flw
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq