Crontab no Linux: EXEMPLOS de agendamento de tarefas

Índice:

Anonim

O que é crontab?

Cron é o nome da palavra grega "Chronos" que é usada para designar o tempo. É um processo do sistema que executará tarefas automaticamente de acordo com a programação específica. É um conjunto de comandos usados ​​para executar tarefas regulares de agendamento. Crontab significa "tabela cron". Ele permite usar o agendador de tarefas, conhecido como cron, para executar tarefas.

Crontab também é o nome do programa, que é usado para editar esse agendamento. Ele é conduzido por um arquivo crontab, um arquivo de configuração que indica comandos shell a serem executados periodicamente para a programação específica.

Neste tutorial do sistema operacional, você aprenderá:

  • O que é crontab?
  • Por que usar CRONJOB?
  • Como usar o cron no Linux?
  • Formato Linux Crontab
  • Como Adicionar / Modificar Crontab
  • Como listar o Crontab
  • Exemplos importantes do Crontab

Por que usar o Cronjobs?

Aqui estão as razões para usar Cronjobs no Linux:

  • Ajuda o sistema operacional a fazer um backup programado de arquivos de log ou banco de dados.
  • Excluir arquivos de log antigos
  • Arquivar e limpar tabelas de banco de dados
  • Envie qualquer e-mail de notificação, como boletins informativos, e-mail de expiração de senha
  • Limpeza regular de dados em cache
  • O Crontab é uma opção ideal para automatizar trabalhos Unix.
  • É usado para automatizar a manutenção do sistema

Como usar o cron no Linux?

O pacote do sistema Linux tem um agendador de tarefas útil chamado crontab. O Crontab é popular porque pode ser programado para executar um processo automatizado como root. Portanto, ter um processo automatizado rodando como root facilita as mudanças no sistema. Você só precisa alterar a tarefa e esperar até que a tarefa seja reiniciada.

Formato Linux Crontab

O Crontab do Linux possui seis campos. Os primeiros cinco campos definem a hora e a data de execução, e o 6º campo é usado para a execução do comando.

Sintaxe do Crontab:

[Minute] [hour][Day_of_the_Month][Month_of_the_Year][Day_of_the_Week][command]

  • Astrics (*): Use para correspondência
  • Definir intervalo: permite definir um intervalo com a ajuda de hífen como 1-10 ou 30-40 ou jan-mar, segunda-feira.
  • Definir vários intervalos: permite definir vários intervalos com comandos separados como abril-junho, outubro-dezembro.

Como Adicionar / Modificar Crontab

O usuário pode editar seus trabalhos crontab com a ajuda do seguinte comando crontab:

$ crontab -u -e

O comando acima abrirá a configuração crontab pessoal do seu sistema de computador, que pode ser editada usando seu editor de texto padrão.

Não há necessidade de reiniciar seu crontab, pois ele selecionará suas alterações automaticamente quando você usar o comando a seguir.

$ crontab -l

Para remover suas tarefas crontab, use o seguinte comando.

$ crontab -r

Para adicionar ou atualizar o trabalho no crontab, use o comando fornecido abaixo.

crontab -e

Comando para editar o crontab de outro usuário

crontab -u username -e

Como listar o Crontab

Comando para ver as entradas do crontab do usuário atual

crontab -l

Comando para visualizar as entradas do crontab de um usuário específico:

crontab -u username -l

Exemplos importantes do Crontab

Aqui estão alguns exemplos importantes de Crontab

Descrição Comando
Comando Cron para fazer os vários trabalhos de agendamento. O comando fornecido abaixo é executado às 7h e às 17h diariamente.
0 7,17 * * * /scripts/script.sh
Comando para executar um cron a cada 5 minutos.
*/5* * * * * /scripts/script.sh
O comando do agendador Cron ajuda você a executar a tarefa todas as segundas-feiras às 5h. Este comando é útil para realizar tarefas semanais, como limpeza do sistema.
0 5 * * mon /scripts/script.sh
O comando executa seu script em um intervalo de 3 minutos.
*/3 * * * * /scripts/monitor.sh
Comando para agendar um cron que é executado em um mês específico. Este comando para executar tarefas é executado nos meses de fevereiro, junho e setembro. Às vezes, precisamos agendar uma tarefa para executar uma tarefa mensal selecionada.
* * * feb,jun,sep * /script/script.sh
Comando para executar em dias selecionados. Este exemplo será executado todas as segundas e quartas-feiras às 17h.
0 17 * * mon,wed /script/script.sh
Este comando permite que o cron seja executado no primeiro sábado de cada mês.
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh
Comando para executar um script com intervalo de 6 horas para que possa ser configurado como abaixo.
0 */6 * * * /scripts/script.sh
Este comando agenda uma tarefa para executar duas vezes na segunda e terça-feira. Use as seguintes configurações para fazer isso.
0 4,17 * * mon,tue /scripts/script.sh
O comando agenda um cron para ser executado a cada 15 segundos.
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh
Comando para agendar tarefas anualmente. @yearly timestamp is = to "0 0 5 1 *". Isso executa a tarefa no quinto minuto de cada ano. Você pode usá-lo para enviar saudações de ano novo.
@yearly /scripts/script.sh
Tarefas de comando a serem executadas mensalmente. @mestral timestamp é semelhante a "0 0 1 * *". Esta expressão de comando permite a execução de uma tarefa no primeiro minuto do mês.
@monthly /scripts/script.sh
Comando para executar várias tarefas usando um único cron.
* * * * * /scripts/script.sh; /scripts/scrit2.sh
Comando para agendar tarefas a serem executadas semanalmente. @weekly timestamp é semelhante a "0 0 4 * sun". Isso é usado para realizar as tarefas semanais, como a limpeza do sistema, etc.
@weekly /bin/script.sh
A tarefa será agendada para execução diária. @daily timestamp é semelhante a "0 2 * * *". Ele executa a tarefa no segundo minuto de cada dia.
@daily /scripts/script.sh
Permite que as tarefas sejam executadas de hora em hora. @hourly timestamp é semelhante a "0 * * * *". Este comando executa uma tarefa no primeiro minuto de cada hora.
@hourly /scripts/script.sh
Permite que as tarefas sejam executadas na reinicialização do sistema. A expressão @reboot é útil para as tarefas que o sistema deseja executar na inicialização do sistema. Isso é útil para iniciar as tarefas em segundo plano automaticamente.
@reboot /scripts/script.sh

Resumo:

  • Cron é o nome da palavra grega "Chronos" que é usada para designar o tempo.
  • Os Cronjobs ajudam o SO a fazer um backup programado de arquivos de log ou banco de dados.
  • O pacote do sistema Linux tem um agendador de tarefas útil denominado crontab que pode ser agendado para executar um processo automatizado como root.
  • O Crontab do Linux possui seis campos. Os primeiros cinco campos definem a hora e a data de execução, e o 6º campo é usado para a execução do comando.