Nota: esta questão não é sobre como editar a guia cron, mas como fazer com que o cron funcione
- Eu editei meu cron usando
env EDITOR=joe crontab -e
- Entrei
1 * * * * echo 'test' > /Users/radek/Backup/rationalvmware/test.txt
e não faz nada, embora o cron esteja configurado corretamente . Verificado via Cronnix e visualizado o cron em / var / cron / tabs. Editar o crontab usando o Cronnix me dá os mesmos resultados.
Se eu executar echo 'test' > /Users/radek/Backup/rationalvmware/test.txt
manualmente, ele criará os arquivos conforme o esperado, portanto, presumo que o comando que forneço ao cron seja o correto.
Existe especial qualquer coisa que tenho que fazer para tornar o trabalho cron no OSX? Como posso verificar se o cron está sendo executado.
Qual é o equivalente a / var / log / messages no OSX? Eu posso ver nas mensagens no SuSE que o cron funciona.
cron
é executado em um ambiente diferente do que o seu próprio comando de teste. Por exemplo: muitas vezes você pode precisar de caminhos absolutos.Respostas:
Duvido que você tenha esperado até 1 minuto depois da hora para o seu teste. Para executar a cada minuto:
fonte
0-59 * * * * osascript -e "display notification \"$(date)\" with title \"Cron test\""
O utilitário cron é iniciado pelo launchd quando vê a existência de
/etc/crontab
ou arquivos/usr/lib/cron/tabs
. Não deve haver necessidade de iniciá-lo manualmente . (Veja as páginas de manual .)Para ver os logs do OS X, você pode usar o Console Utility.
fonte
/private/var/at/tabs/
, FYIDuas outras maneiras são de usar:
ou
Ambos correm a cada minuto.
fonte
Primeiro, você precisa definir sua
$EDITOR
variável como algo razoável, pois o que você definiu como algo que você não deseja. Defina assim:Você pode mudar
joe
para outro editor de texto, comonano
ouvim
.Em seguida, você deseja editar o seu
crontab
, o que é feito da seguinte maneira:Então você vai colocar o texto para
cron
usar.fonte
joe
para não poder ser usado. A chave é quecrontab -e
é usada.Se você quiser usar o cron no Mountain Lion, dê uma olhada aqui: https://coderwall.com/p/ry9jwg ou apenas abra o terminal e execute
sudo touch /etc/crontab
. Depois disso, seus trabalhos em / usr / lib / cron / tabs devem ser tratados pelo cron.fonte