Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal, estou precisando executar um arquivo .php dentro de um servidor todos os dias da semana as 13, exceto sábado e domingo.
Alguém sabe qual o comando que devo dar para que isso seja possível?
E além disso, tem alguma forma de visualizar as funções CRON que eu inputar no servidor?
Estou começando agr e preciso de ajuda.
Obrigado!
AnthraxisBR, obrigado por responder.
Pelo oq eu pesquisei aqui, eu teria que dar 5 comando diferentes(Um pra cada dia útil da semana) pra executar o meu arquivo de segunda a sexta. Minha grande dúvida é se tem como fazer isso com um único comando.
E obrigado pela segunda resposta.
Qual SO você vai usar ? vou tentar fazer aqui, ai faço no mesmo pra funcionar pros dois.
Linux
@Shinchila_Matadora da uma olhada aqui, foi bem mais simples do que eu tinha imaginado.
Para abrir
>
Citar
contrab -e
Esse executa todo dia as 19 horas a rotina que verifica as modificações e faz um backup diário.
>
Citar
00 19 * /var/www/routines/backup-modified.php
E essa chama um arquivo que faz o backup completo toda sexta feira as 20 horas, e armazena num local separado.
>
Citar
00 20 5 /var/www/routines/dump-all-structure-and-data.php
Não testei 100%, mas é basicamente só isso.
A lógica do crontab é:
* /caminho/objeto.formato
1 ° * => Minutos
2 ° * => Hora
3 ° * => Dia do mês
4 ° * => Mês (1-12)
5 ° * => Dia da semana (0 dom, 6 sab)
E no final vai o caminho para o que deve ser executado.
PS: Eu rodo isso direto no servidor com pacote LAMP, então ele ja le automatico, se você usar um pacote como o XAMPP não sei dizer se ele vai ler só executando, mas acredito que sim, exceto se você substituiu o apache nativo ( e também depende de qual distro você usa, eu uso Debian 7).@AnthraxisBR Obrigado pela resposta cara, já me deu uma luz imensa.
Mas ainda estou com um porém. Dessa forma que é feita, eu teria que criar uma função CRON para cada dia da semana exceto sábado e domingo.
Existe alguma forma de escrever isso que faça com que ele execute o arquivo todos os dias 'exceto' sábado e domingo?
Essa é minha grande questão
Vale mais a pena você fazer uma pra cada dia mesmo, não acho que ele possua ifs pra você fazer fazer isso
Entendi cara, Muito obrigado pela ajuda :D
0 13 1-5 /usr/bin/php /path/para/o/arquivo.php >/dev/null 2>&1
Significa: às 13 horas de segunda à sexta-feira.
;)
>
Em 05/09/2017 at 12:52, João Batista Neto disse:
0 13 1-5 /usr/bin/php /path/para/o/arquivo.php >/dev/null 2>&1
Significa: às 13 horas de segunda à sexta-feira.
;)
Obrigado, era isso que eu queria.
Mas vou apertar um pouco mais kkk
Quero que execute de segunda a sexta em 3 horários diferentes
15:29, 15:30 e 15:31.
Tem como fazer isso num único comando?
>
Em 08/09/2017 at 10:47, Shinchila_Matadora disse:
Quero que execute de segunda a sexta em 3 horários diferentes
15:29, 15:30 e 15:31.
29-31 15 1-5 /usr/bin/php /path/para/o/arquivo.php >/dev/null 2>&1
Significa: todos os minutos de 29 até 31, à partir das 15 horas, de segunda à sexta-feira.
Exatamente o que eu precisava, muito obrigado pela ajuda galera!!!
Abraços e Sucesso!
1 - você precisa colocar o arquivo que você quer executar em alguma pasta que posse ser lida pelo apache.
2 - Indicar as coisas que devem ser feitas e as condições ao CRON, e apontar o CRON pra abrir o arquivo em um navegador.
Essa abertura pode ser feita de duas formas:
1 - Indicar para o cron abrir o navegador e acessar a url.
2 - Criar um atalho que abra direto o navegador na url em questão, e indicar para o CRON trigerar esse atalho.
Para visualizar os comandos atuais se não me engano é 'contrab -l'.
Eu preciso fazer um negócio parecido, mas ainda não fiz, mas acredito que seja esse o caminho.