Increase your Linux/Unix Productivity: How to use crontab Aumente su Linux / Unix Productividad: Cómo usar crontab

by Sukrit Dhandhania on November 17, 2008 por Sukrit Dhandhania el 17 de noviembre, 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. Aparte de los videojuegos una de las grandes ventajas de la utilización de los ordenadores es que no se parecen a la mente haciendo aburridas y repetitivas tareas que preferiría no hacer. 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 realizar tareas monótonas como ejecutar copias de seguridad diarias que estamos mejor programación a ejecutar en un determinado periodo de tiempo cada día, y hacer más cosas interesantes con nuestro tiempo. Linux and UNIX usually come with the utility “crontab” by default. Linux y UNIX generalmente vienen con la utilidad "crontab" por defecto. This very useful command allows you to schedule tasks to run at a specified time and repeat as configured. Esta muy útil comando le permite programar tareas para ejecutarse en un plazo determinado y repetir como se configura. A task scheduled using “crontab” is called a “cron job”. Una tarea programada utilizando "crontab" se denomina una "tarea".

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. El comando crontab permite encargar a su servidor para ejecutar un script en un determinado minuto de la especificada día del mes en particular. To see what cron jobs are setup to run on your machine, run the following command: Para ver qué cron puestos de trabajo están configurados para funcionar en su máquina, ejecute el comando siguiente:

# crontab -l # Crontab-l

If your machine has some cron jobs configured it will display something like the following: Si su máquina tiene algunos puestos de trabajo configurado cron se mostrará algo como lo siguiente:

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. El crontab de configuración de arriba muestra una tarea que ejecuta el script de shell "backup_script" todos los días a las 6 AM. The * means to run at every instance of the value in the field. * El medio para que se ejecute en cada caso del valor en el 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. Por lo tanto, un asterisco en el día, mes y día de la semana los campos en el ejemplo anterior significa que la secuencia de comandos debe correr todos los días del mes, todos los meses del año, y todos los días de la semana. The first and second fields tell crontab to execute the script at zero minutes and six hours, which is 6 AM. La primera y la segunda campos decir crontab para ejecutar la secuencia de comandos en cero minutos y seis horas, que es de 6 AM. 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. Por lo tanto, esta tarea de configuración diría algo como esto, "Ejecutar el script / opt / scripts / backup_script.sh a cero minutos, 6 de la mañana, cada día, cada mes, y cada día de la semana." Debajo está la "anatomía "De una configuración crontab explicó.

0 6 * * * /opt/scripts/backup_script.sh 0 6 * * * / opt / scripts / backup_script.sh
|  |  |  |  | | | | | |
|  |  |  |  |________________ day of week (Sunday=0) | | | | |________________ Día de la semana (Domingo = 0)
|  |  |  |__________________ month of year | | | |__________________ Meses del año
|  |  |____________________ day of month | | |____________________ Día del mes
|  |______________________ hour of day | |______________________ Hora del día
|________________________ minute of hour |________________________ Minutos de la hora

To schedule new cron jobs or to edit old ones execute the following command: Para programar nuevos puestos de trabajo cron o editar los antiguos ejecutar el siguiente comando:

# crontab -e # Crontab-e

This will bring up an editor with which you can add, edit, or delete “cron jobs”. Se abrirá un editor con el que puede agregar, editar o borrar "cron puestos de trabajo". To schedule a job to run at 3:45 PM every Monday add entry like this: Para programar una tarea para que se ejecute a 3:45 PM todos los lunes agregar 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. También puede utilizar una coma para agregar múltiples entradas en un campo. This is useful if you want to run a script thrice a day, with an eight hour interval. Esto es útil si desea ejecutar un script de tres veces al día, con un intervalo de ocho horas. Make sure you do not leave space between entries in a single field, though. Asegúrese de no dejar espacio entre las entradas en un solo campo, sin embargo. Your “cron job” entry would look like this: Su "tarea" de entrada se vería así:

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. En el ejemplo anterior la secuencia de comandos "db_backup_script.sh" se ejecuta al 1 º de AM, 9 AM y 5 PM todos los días en los meses de febrero y noviembre. There are a lot of cool things that you can do with cron jobs. Hay un montón de enfriar las cosas que usted puede hacer con cron puestos de trabajo. The same works for day, month, and day of week. El mismo trabaja para el día, mes y día de la semana. Once you get the hang of this try out the following. Una vez que el cuelgue de este probar lo siguiente. Crontab doesn’t only understand numbers, it can also operate on some basic English words: Crontab no sólo comprender los números, también puede funcionar en algunas palabras básicas Inglés:

string explanation cadena de explicación
—— ———– - ----
@reboot Run once, the next time the system reboots @ Ejecutar reiniciar una vez, la próxima vez que el sistema se reinicia
@yearly Run once a year, at the beginning of the year @ anual Ejecutar una vez al año, en el comienzo del año
@annually Same as @yearly, run once annually anualmente @ @ Igual que cada año, ejecute una vez al año
@monthly Run once a month, at the beginning of the month @ mensual Ejecutar una vez al mes, a principios del mes
@weekly Run once a week, at the beginning of the week @ semanal Ejecutar una vez a la semana, al comienzo de la semana
@daily Run once a day, at midnight @ diario Ejecutar una vez al día, a la medianoche
@midnight Same as @daily, run at midnight @ Igual que en la medianoche @ diario, dirigido a la medianoche
@hourly Run once an hour, at the beginning of the hour @ Ejecutar una vez por hora una hora, en el comienzo de la hora

So, for example, if you want to run a script at midnight every night, this is what your crontab configuration would look like: Así, por ejemplo, si desea ejecutar un script a la medianoche todas las noches, esto es lo que su configuración crontab se vería como:

@midnight /opt/scripts/script.sh @ medianoche / 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. El uso de "@ medianoche", en lugar de "0 0 * * *" trabajará en la misma y ejecutar la secuencia de comandos pidió a la medianoche cada noche, mientras que un ser mucho más legible que su homólogo numérica. You can also make the use of hyphens to declare a range. Usted también puede hacer el uso de guiones para declarar una serie. In the command below “script.sh” will be executed at the beginning of every hour from 1 AM to 6 AM: En el comando abajo "script.sh" se ejecutará en el inicio de cada hora a partir del 1 de AM a 6 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. Hay muchas cosas más cool que se puede hacer con 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 él, es muy fácil de utilizar, una vez que se cuelgan en la que, y muy poderosos. Use this tool wisely, as scheduling a task wrongly can sometimes do a lot of harm. Utilice esta herramienta sabiamente, como la programación de una tarea a veces erróneamente pueden hacer mucho daño. Reading the “man page” of crontab would be highly recommended. Lectura de la "página de manual" de crontab sería altamente recomendable.

Related Posts: Puestos relacionados con:
  • 5 Desktop Wallpapers that will increase your productivity 5 Fondos de Pantalla, que aumentará su productividad
  • Update: Gmail increases storage to 4.2GB Actualización: Gmail aumenta el almacenamiento de 4.2GB
  • How to create automated Linux/Unix backups Cómo crear automatizado de Linux / Unix copias de seguridad
  • 3 Tools to increase iWeb functionality 3 Herramientas para aumentar la funcionalidad de iWeb
  • How to use dstat to monitor your Linux/UNIX server Cómo utilizar dstat para vigilar su Linux / UNIX servidor
  • Get Simple Help tutorials just like this one in your email inbox every day - for free! Get Simple tutoriales de ayuda al igual que este un mensaje de correo electrónico en su bandeja de entrada cada día - para libre! Just enter your email address below: Sólo tienes que introducir tu dirección de correo electrónico a continuación:

    You can always opt out of this email subscription at any time. Usted siempre puede optar por salir de este mensaje de correo electrónico de suscripción en cualquier momento.


    Bookmark and Share Favoritos y Compartir

    { 0 comments… (0 comentarios ... add one now añadir ahora una } )

    Leave a Comment Déjanos tu comentario

    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> Puede utilizar estas etiquetas HTML y atributos: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>