comando crontab Linux
Linux crontab é o programa usado para executar periodicamente os comandos.
Quando a instalação estiver completo sistema operacional, o padrão será iniciado esta tarefa comando agendamento.
Chung crond comando verifica para o trabalho a ser realizado em uma base regular a cada minuto, se há trabalho a ser executado automaticamente executar o trabalho.
Trabalhando agendamento de tarefas linux é dividido nas seguintes categorias:
- 1, o trabalho realizado pelo sistema: O sistema funciona periodicamente para ser executada, como sistema de backup de dados, limpar o cache
- 2, o trabalho realizado por uma pessoa: uma obra de usuário a ser feito em uma base regular, como a cada 10 minutos para verificar se o servidor de correio tem uma nova carta, que o trabalho de cada usuário para definir a sua própria
gramática
crontab [ -u user ] file
ou
crontab [ -u user ] { -l | -r | -e }
explicação:
crontab é usado para permitir que os usuários em um tempo fixo ou em intervalos regulares com o processo de execução, em outras palavras, é semelhante ao calendário do usuário.
-u usuário especifica o usuário se refere ao tempo de mesa o conjunto, a premissa é que você deve ter a permissão deles (por exemplo, o root) pode especificar calendário de outros, a. Se você não usar o usuário u, então, é expresso para definir seu próprio horário.
Parâmetro Descrição:
- -e: executar um editor de texto para definir o tempo de-mesa, o editor de texto padrão é VI, se você quiser usar outro editor de texto, defina a variável de ambiente VISUAL para especificar o editor de texto (por exemplo, setenv joe VISUAL)
- -r: Remover o calendário atual
- -l: Lista o tempo atual tabela
Horário tem o seguinte formato:
f1 f2 f3 f4 f5 program
- Onde f1 é um minuto, F2 a hora, F3 representa um mês nos primeiros dias, f4 representa o mês, f5 representa um dia da semana. programa indica que o programa a ser executado.
- Quando expresso como f1 * tem que executar quando cada programa minuto, f2 * indica um programa para ser executado por hora, eo resto, por analogia
- Uma representação desde o primeiro minuto para o primeiro B minutos desta vez para executar, F2 tem que executar quando a representação ab a partir de uma para horas b, o resto, por analogia Quando f1 é ab quando
- N representa cada minuto intervalos de tempo uma vez, para o F2 * / N n representa cada intervalo de tempo de uma hora, quando F1 é * / N, o restante por analogia
- Denota um F2, b, c ... representa o a, b, c, ... minutos para executar, para a a, b, c, ... quando F1 é a, b, c, ... quando horas para executar, eo resto, por analogia
Os usuários também podem armazenar todas as configurações no arquivo antes de usar maneira arquivo crontab para definir calendário.
Exemplos
A primeira hora mensal 0 minutos por dia para fazer a / bin / ls
0 7 * * * /bin/ls
Dentro de 12 meses, o diário 06:00-12:00, e a cada 20 minutos para executar a / usr / bin / backup
0 6-12/3 * 12 * /usr/bin/backup
Segunda a Sexta 17:00 todos os dias enviar uma carta ao [email protected]~~V
0 17 * * 1-5 mail -s "hi" [email protected] < /tmp/maildata
meia-noite mensal todos os dias 0:20, 2:20, 4:20 .... executar echo "haha"
20 0-23/2 * * * echo "haha"
Em seguida, considere alguns exemplos específicos:
0 */2 * * * /sbin/service httpd restart 意思是每两个小时重启一次apache 50 7 * * * /sbin/service sshd start 意思是每天7:50开启ssh服务 50 22 * * * /sbin/service sshd stop 意思是每天22:50关闭ssh服务 0 0 1,15 * * fsck /home 每月1号和15号检查/home 磁盘 1 * * * * /home/bruce/backup 每小时的第一分执行 /home/bruce/backup这个文件 00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm {} \; 每周一至周五3点钟,在目录/home中,查找文件名为*.xxx的文件,并删除4天前的文件。 30 6 */10 * * ls 意思是每月的1、11、21、31日是的6:30执行一次ls命令
Nota: Quando você executa o tempo do programa especificado, o sistema irá enviar uma carta para que você exiba o conteúdo da execução do programa, se você não deseja receber tal carta, por favor deixe um espaço após cada linha Plus> / dev / null 2> & 1 a