Terminal 101 Criando Cron Jobs
ComoToda segunda-feira, mostraremos como fazer algo novo e simples com o aplicativo de linha de comando integrado da Apple. Você não precisa de nenhum software sofisticado ou conhecimento de codificação para fazer qualquer um deles. Tudo que você precisa é de um teclado para digitá-los!
Há muitas vezes quando você precisa executar um script de shell ou um comando em intervalos regulares. Isso pode ser para limpar seu sistema ou executar tarefas de manutenção no seu computador. Para esses trabalhos, você vai querer usar algo chamado "Crons". Um cron job é uma maneira simples de especificar um intervalo de comando e execução para o sistema operacional. Mostraremos como criar esses trabalhos e como removê-los quando se tornarem desnecessários.
A sintaxe de trabalho Cron
Ao especificar a hora em que um cron é executado, há uma sintaxe especializada que é usada para informar ao sistema operacional exatamente quando executar a tarefa..
A seqüência de tempo de um cron job se parece com isso:
* * * * *
- O primeiro asterisco é para especificar o minuto da corrida (0-59)
- O segundo asterisco é para especificar a hora da corrida (0-23)
- O terceiro asterisco é para especificar o dia do mês da corrida (1-31)
- O quarto asterisco é para especificar o mês da corrida (1-12)
- O quinto asterisco é para especificar o dia da semana (onde domingo é igual a 0, até sábado é igual a 6)
Então, vamos dar uma olhada em alguns exemplos:
Se você quisesse executar o trabalho todos os dias às 13:00, você poderia usar a sequência de temporização do trabalho cron seguinte:
0 13 * * *
Se você quiser que o trabalho seja executado a cada 30 minutos, use a seguinte sequência:
30 * * * *
E, por último, se você quisesse que o trabalho fosse executado uma vez por semana na quarta-feira, poderia digitar a seguinte sequência:
* * * * 3
Se você tiver requisitos mais complexos para os tempos de execução de tarefas agendadas, poderá dar uma olhada neste guia para obter mais detalhes sobre como formatar a sequência.
Observe que, se você não estiver usando um item específico, poderá substituí-lo por um asterisco (*) e o cron não incluirá isso na sequência de tempo. Note que entre os asteriscos, existem abas usadas, e não espaços (então, não copie nada daqui e cole), mas digite com abas.
Criando um trabalho Cron
Depois de baixar a sequência, criar o trabalho é a parte fácil. Usaremos o nano para criar uma entrada crontab que contenha a sequência de tempo que você descobriu, bem como o comando (ou local do script) que você deseja executar.
Para começar a criar o arquivo cron, digite o seguinte comando:
env EDITOR = nano crontab -e
Isto diz ao comando "crontab" para abrir um novo arquivo dentro do editor de texto nano. Todos os seus trabalhos cron serão colocados neste arquivo de texto, cada um em uma nova linha. Depois que o editor nano for carregado, você digitará os trabalhos agendados assim:
[seqüência de tempo] commandToRun
Substitua "[seqüência de tempo]" pela sequência de temporização do trabalho cron que você trabalhou na primeira etapa. Isto irá dizer ao programa crontab quando executar o comando. Substitua "commandToRun" pelo comando atual (ou pelo caminho para um script de shell) que você deseja executar no momento determinado na seqüência de tempo.
Se você deseja inserir várias tarefas cron, insira cada cron em uma linha separada no arquivo.
Para salvar o arquivo, pressione Control + O (para gravar o arquivo), digite para aceitar o nome do arquivo e pressione Control + X (para sair do nano)..
Se tudo correu bem, então você deve ter agora um cron job criado para você. Se o cron foi criado corretamente, você deverá ver "crontab: instalando o novo crontab".
Seu comando (ou shell script) começará a ser executado na sequência de tempo programada.
Removendo Jobs Cron
Pode chegar um momento em que você não deseja mais executar um cron job. Quando essa hora chegar, você pode simplesmente editar o arquivo digitando o seguinte comando novamente:
env EDITOR = nano crontab -e
Exclua a linha que contém o comando que você não deseja mais usar, salve novamente o arquivo pressionando Control + O (para gravar o arquivo) e, em seguida, Control + X (para sair do nano).
Listar tarefas Cron agendadas
Você pode ver quantos trabalhos estão agendados no momento dentro do cron digitando o seguinte comando:
crontab -l
Isso listará os trabalhos agendados atualmente, um a um, diretamente dentro do Terminal, sem ter que abrir o arquivo crontab no editor de texto..
Cory Bohon é um escritor freelancer de tecnologia, desenvolvedor indie Mac e iOS e fotógrafo amador. Siga o autor deste artigo no Twitter.