Pergunta

Eu estou tentando se familiarizar com tarefas agendadas, e acho que essa é a idéia básica (programação, sintaxe, etc), mas, eu não consigo acertar no meu mac com o Terminal - onde exatamente fazer Acho que a Crontab? Como devo fazer referência os caminhos a scripts?

O que eu estou tentando fazer é bater um script php em uma máquina remota ( http:. // .. ) -? isso é possível em tudo

Foi útil?

Solução

Para começar com o launchd (em vez de cron) você vai querer primeiro criar um arquivo .plist vazios, por exemplo local.mytask.plist e colocá-lo em algum lugar. ~/Library/LaunchAgents é provavelmente um bom lugar. Aberta que no editor de texto e copie o código abaixo

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<false/>
<key>Label</key>
<string>local.mytask</string>
<key>ProgramArguments</key>
<array>
<string>/opt/local/bin/wget</string>
<string>http://someserver/somepage.php</string>
</array>
<key>StartInterval</key>
<integer>300</integer>
<key>RunAtLoad</key>
<true />
<key>StandardErrorPath</key>
<string>/dev/null</string>
<key>StandardOutPath</key>
<string>/dev/null</string>
</dict>
</plist>

Em seguida, "Ativar" o arquivo a partir da linha de comando:

sudo launchctl load /Users/my_username/Library/LaunchAgents/local.mytask.plist

Para torná-lo carregar automaticamente, crie um arquivo ~/.launchd.conf com a mesma linha (sudo launch menos)

load /Users/my_username/Library/LaunchAgents/local.mytask.plist

As instruções acima acima foram copiados de www.davidlanier.com e anunciado aqui como referência.

Outras dicas

Tipo crontab -e para editar sua tabela cron e crontab -l para listar o conteúdo atual .. Tipo man 1 crontab para mais informações sobre esse comando e man 5 crontab para mais informações sobre o formato de arquivo da tabela de cron.

Por exemplo, para baixar a página stackoverflow todos os dias às 10: 00a, crontab -e prazo, entrar nesta linha, e depois salvar / sair. A saída será gravada em um arquivo em seu diretório pessoal.

0 10 * * * /usr/bin/curl -s http://stackoverflow.com > ~/stackoverflow.html

Sobre a chance de que alguém luta com cron em tropeços Snow Leopard através desta, vou desenterrar esta discussão antiga.

Sim, launchd é suposto para substituir cron, mas na verdade ele não pode fazer certas coisas cron lata.

Cron não está bem integrado. Se ele envia uma mensagem, ela acaba em / var / mail / user_name que, naturalmente, Apple Mail não sabe nada sobre.

crontab -e joga-se dizendo 'arquivo temporário deve ser editado no lugar'. Aparentemente vim não vi é compatível. Você pode então fazer crontab "

Sim, demorou um tempo para resolver isso tudo para fora: (

launchd é poderoso, mas você realmente não quer escrever o plist si mesmo. Obter Lingon . É um open-source, muito bem concebido GUI para criar e gerenciar tarefas launchd do seu sistema.

Cron foi substituído por launchd desde 10.4. Você provavelmente deve escrever suas tarefas usando isto a menos que você planeja portar para sistemas Linux / Unix em algum ponto.

Se você decidir ir com cron qualquer maneira, tente crontab -e digitação ou sudo crontab -e. Eles darão diferentes arquivos crontab, o antigo para o usuário que você está executando atualmente como eo último para o usuário root.

"Bater" um URL pode ser feito de várias maneiras. Dependendo do script local que você está usando para "hit", você poderia usar alguns dos da linguagem built-in métodos / classes. Por exemplo, um script Ruby usaria net / http mas você pode tentar onda, bem como se você está apenas escrevendo um script bash. Fazer man curl para encontrar mais, mas o comando básico é apenas curl http://google.com.

Você não quer estar usando cron. Como outros já disse, ele foi substituído por launchd e launchd é claro que vai ser o futuro no Mac OS X.

MacTech Revista foi recentemente fazendo uma série de artigos sobre launchd e eu recomendo lê-los. Eu sei que eu certamente aprendi muito.

de setembro de 2009 (Volume 25, Issue 9) 25,09 MacEnterprise: launchd para almoço

Outubro de 2009, (Volume 25, Issue 10) Snow Leopard, launchd, e almoço Mais receitas launchd, e um olhar para mudanças no Snow Leopard

Houve outros artigos em MacTech e gostaria de sugerir à procura seu site.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top