Increase your Linux/Unix Productivity: How to use crontab Aumente o seu Linux / Unix Produtividade: Como usar o crontab

by Sukrit Dhandhania on November 17, 2008 por Sukrit Dhandhania em 17 de novembro de 2008

Linux

Apart from video games one of the great advantages of using computers is that they don’t seem to mind doing boring and repetitive tasks that we would rather not do. Para além de jogos de vídeo uma das grandes vantagens do uso de computadores é que eles não parecem ter em mente a fazer tarefas repetitivas e aborrecidas que nós preferimos não fazer. For monotonous tasks such as running daily backups we are better off scheduling them to run at a certain time every day, and do more interesting stuff with our time. Para tarefas monótonas, como backups diários que estamos a correr melhor programação off-los para executar em um determinado horário todos os dias, e fazer coisas mais interessantes com o nosso tempo. Linux and UNIX usually come with the utility “crontab” by default. Linux e UNIX geralmente vêm com o utilitário "crontab" por omissão. This very useful command allows you to schedule tasks to run at a specified time and repeat as configured. Este comando permite-lhe muito útil para agendar tarefas a executar em um determinado momento e repetir tal como configurados. A task scheduled using “crontab” is called a “cron job”. Uma tarefa agendada usando "crontab" é chamado de "cron job".

The crontab command allows you to instruct your server to execute a script at a specified minute of the specified day of the particular month. O comando crontab lhe permite instruir o servidor para executar um script em um determinado minuto do dia do especificado determinado mês. To see what cron jobs are setup to run on your machine, run the following command: Para ver quais são cron empregos setup para ser executado em sua máquina, execute o seguinte comando:

# crontab -l # Crontab-l

If your machine has some cron jobs configured it will display something like the following: Se a sua máquina tem algumas cron empregos configurado ele vai mostrar algo como o seguinte:

0 6 * * * /opt/scripts/backup_script.sh 0 6 * * * / opt / scripts / backup_script.sh

The crontab configuration above shows a cron job that executes the shell script “backup_script” everyday at 6 AM. O crontab configuração acima revela um trabalho do cron que executa o shell script "backup_script" todos os dias às 6 horas da manhã. The * means to run at every instance of the value in the field. * Os meios para executar em cada instância do valor no campo. So an asterisk in the day, month, and day of week fields in the above example means that the script should run every day of the month, every month of the year, and every day of the week. Então, um asterisco no dia, mês e dia da semana em campos no exemplo acima significa que o script deve ser executado todos os dias do mês, todos os meses do ano, e todos os dias da semana. The first and second fields tell crontab to execute the script at zero minutes and six hours, which is 6 AM. O primeiro eo segundo campos dizer crontab para executar o script no zero minutos e seis horas, o que é de 6 horas da manhã. So, this cron job configuration would read something like this, “Run the script /opt/scripts/backup_script.sh at zero minutes, 6 AM, every day, every month, and every day of the week.” Below is the “anatomy” of a crontab configuration explained. Então, essa configuração cron job ia ler algo como isto, "Executar o script / opt / scripts / backup_script.sh no zero minutos, 6 AM, todos os dias, todos os meses, e todos os dias da semana." Abaixo está a "anatomia "Configuração de um crontab explicou.

0 6 * * * /opt/scripts/backup_script.sh 0 6 * * * / opt / scripts / backup_script.sh
|  |  |  |  | | | | | |
|  |  |  |  |________________ day of week (Sunday=0) | | | | |________________ Dia da semana (domingo = 0)
|  |  |  |__________________ month of year | | | |__________________ Meses do ano
|  |  |____________________ day of month | | |____________________ Dia do mês
|  |______________________ hour of day | |______________________ Hora do dia
|________________________ minute of hour |________________________ Minuto da hora

To schedule new cron jobs or to edit old ones execute the following command: Cron para agendar novos postos de trabalho ou para editar as velhas executar o seguinte comando:

# crontab -e # Crontab-e

This will bring up an editor with which you can add, edit, or delete “cron jobs”. Isso fará com que um editor com o qual você pode adicionar, editar ou excluir "cron empregos". To schedule a job to run at 3:45 PM every Monday add entry like this: Para agendar uma tarefa para ser executada a cada segunda-feira 3:45 PM adicionar entrada como esta:

45 15 * * 1 /opt/scripts/script.sh 45 15 * * 1 / opt / scripts / script.sh

You can also use a comma to add multiple entries into a field. Você também pode usar uma vírgula para adicionar várias entradas em um campo. This is useful if you want to run a script thrice a day, with an eight hour interval. Isso é útil se você deseja executar um script três vezes por dia, com um intervalo de oito horas. Make sure you do not leave space between entries in a single field, though. Certifique-se de não deixar espaço entre as entradas em um único campo, apesar de tudo. Your “cron job” entry would look like this: Seu "cron job" entrada seria mais ou menos assim:

0 1,9,17 * 2,11 * /opt/scripts/db_backup_script.sh 0 1,9,17 * 2,11 * / opt / scripts / db_backup_script.sh

In the above example the script “db_backup_script.sh” runs at 1 AM, 9 AM, and 5 PM every day in the months of February and November. No exemplo acima o script "db_backup_script.sh" é executado na AM 1, AM 9, 5 e PM, todos os dias, os meses de novembro e fevereiro. There are a lot of cool things that you can do with cron jobs. Existem um monte de coisas cool que você pode fazer com cron empregos. The same works for day, month, and day of week. O mesmo funciona para o dia, mês e dia da semana. Once you get the hang of this try out the following. Depois de conseguir o jeito de experimentar o seguinte presente. Crontab doesn’t only understand numbers, it can also operate on some basic English words: Crontab não só compreender números, ela também pode funcionar em algumas palavras básicas Inglês:

string explanation string explicação
—— ———– - ----
@reboot Run once, the next time the system reboots @ reboot Executar uma vez, da próxima vez que o sistema reinicializa
@yearly Run once a year, at the beginning of the year @ anualmente Executar uma vez por ano, no início do ano
@annually Same as @yearly, run once annually @ @ anualmente Mesmas anualmente, executado uma vez por ano
@monthly Run once a month, at the beginning of the month @ mensal Executar uma vez por mês, no início do mês
@weekly Run once a week, at the beginning of the week @ semanais Executar uma vez por semana, no início da semana
@daily Run once a day, at midnight @ diário Executar uma vez por dia, à meia-noite
@midnight Same as @daily, run at midnight Idêntica à meia-noite @ @ diário, corre a meia-noite
@hourly Run once an hour, at the beginning of the hour @ horária Executar uma vez uma hora, no início da hora

So, for example, if you want to run a script at midnight every night, this is what your crontab configuration would look like: Assim, por exemplo, se você deseja executar um script à meia-noite, todas as noites, isto é o que o seu crontab configuração teria o seguinte aspecto:

@midnight /opt/scripts/script.sh @ meia-noite / opt / scripts / script.sh

Using “@midnight” rather than “0 0 * * *” will work the same and execute the requested script at midnight every night while being a lot more readable than its numerical counterpart. Usando "@ meia-noite", em vez de "0 0 * * *" vai trabalhar o mesmo e executar o script solicitado à meia-noite, todas as noites embora sendo muito mais legíveis do que o seu homólogo numérica. You can also make the use of hyphens to declare a range. Você também pode fazer o uso de hífens para um leque declaram. In the command below “script.sh” will be executed at the beginning of every hour from 1 AM to 6 AM: No comando abaixo "script.sh" será executado no início de cada hora a partir de 1 a 6 AM AM:

0 1-6 * * * /opt/scripts/script.sh 0 1-6 * * * / opt / scripts / script.sh

There are many more cool things you can do with cron. Há muitas coisas mais cool que pode fazer com cron. Every sysasmin swears by it, it’s pretty easy to use once you get the hang on it, and very powerful. Cada sysasmin jura por ele, é muito fácil de utilizar, uma vez que você começa a segure-se dele, e muito poderoso. Use this tool wisely, as scheduling a task wrongly can sometimes do a lot of harm. Utilize esta ferramenta muito acertadamente, como agendar uma tarefa, por vezes erradamente pode fazer um monte de danos. Reading the “man page” of crontab would be highly recommended. Lendo o "man page" do crontab seria altamente recomendado.

Related Posts: Posts Relacionados:
  • 5 Desktop Wallpapers that will increase your productivity 5 Papéis de Parede que irá aumentar a sua produtividade
  • Update: Gmail increases storage to 4.2GB Update: Gmail aumenta armazenamento de 4.2GB
  • How to create automated Linux/Unix backups Como criar automatizado Linux / Unix backups
  • 3 Tools to increase iWeb functionality 3 ferramentas para aumentar a funcionalidade iWeb
  • How to use dstat to monitor your Linux/UNIX server Como usar dstat de monitorar o Linux / Unix servidor
  • Get Simple Help tutorials just like this one in your email inbox every day - for free! Obter Ajuda Simples tutoriais apenas como um presente em seu correio eletrônico todos os dias - gratuitamente! Just enter your email address below: Basta digitar o seu endereço de e-mail abaixo:

    You can always opt out of this email subscription at any time. Você pode optar por sair semper deste e-mail subscrição a qualquer momento.


    Bookmark and Share Favoritos e Partilhar

    { 0 comments… (0 comentários ... add one now adicionar um agora } )

    Leave a Comment Deixe um comentário

    You can use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> Você pode usar esses atributos e tags HTML: <a href="" title="Avião"> <abbr title="Avião"> <acronym title="Avião"> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>