Increase your Linux/Unix Productivity: How to use crontab Augmentez votre Linux / Unix productivité: Comment faire pour utiliser crontab

by Sukrit Dhandhania on November 17, 2008 par Sukrit Dhandhania le 17 Novembre 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. En dehors de jeux vidéo l'un des grands avantages de l'aide d'ordinateurs, c'est qu'ils ne semblent pas ennuyeux à faire des tâches répétitives et que nous préférerions ne pas faire. 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. Pour la monotonie des tâches telles que l'exécution des sauvegardes quotidiennes, nous sommes mieux leur calendrier de rouler à une certaine heure chaque jour, et de faire plus intéressant avec notre temps. Linux and UNIX usually come with the utility “crontab” by default. Linux et UNIX viennent généralement avec l'utilitaire "crontab" par défaut. This very useful command allows you to schedule tasks to run at a specified time and repeat as configured. Cette commande très utile vous permet de planifier des tâches à exécuter en un laps de temps et de répéter que configuré. A task scheduled using “crontab” is called a “cron job”. Une tâche programmée en utilisant "crontab" est appelé un "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. La commande crontab vous permet de charger votre serveur pour exécuter un script à une minute de la date déterminée de l'notamment mois. To see what cron jobs are setup to run on your machine, run the following command: Pour voir ce que cron jobs sont configurés pour fonctionner sur votre machine, exécutez la commande suivante:

# crontab -l # Crontab-l

If your machine has some cron jobs configured it will display something like the following: Si votre machine a des cron jobs configuré, il affichera quelque chose comme ce qui suit:

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. La configuration crontab ci-dessus montre une tâche cron qui exécute le script shell "backup_script" de tous les jours à 6 heures du matin. The * means to run at every instance of the value in the field. * Les moyens de fonctionner à tous les cas de la valeur dans le champ. 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. Ainsi, un astérisque dans la journée, le mois et le jour de la semaine domaines dans l'exemple ci-dessus signifie que le script doit exécuter tous les jours du mois, chaque mois de l'année, et tous les jours de la semaine. The first and second fields tell crontab to execute the script at zero minutes and six hours, which is 6 AM. Les premier et deuxième champs dire crontab pour exécuter le script à zéro minutes et six heures, qui est de 6 heures du matin. 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. Ainsi, cette tâche cron configuration serait quelque chose de ce genre, "Exécuter le script / opt / scripts / backup_script.sh à zéro minutes, 6 heures du matin, chaque jour, chaque mois, et chaque jour de la semaine." Ci-dessous est la "anatomie "D'une configuration crontab expliqué.

0 6 * * * /opt/scripts/backup_script.sh 0 6 * * * / opt / scripts / backup_script.sh
|  |  |  |  | | | | | |
|  |  |  |  |________________ day of week (Sunday=0) | | | | |________________ Jour de la semaine (dimanche = 0)
|  |  |  |__________________ month of year | | | |__________________ Mois de l'année
|  |  |____________________ day of month | | |____________________ Jour du mois
|  |______________________ hour of day | |______________________ L'heure de la journée
|________________________ minute of hour |________________________ Minute de l'heure

To schedule new cron jobs or to edit old ones execute the following command: Pour planifier cron nouveaux emplois ou de modifier les anciens, exécutez la commande suivante:

# crontab -e # Crontab-e

This will bring up an editor with which you can add, edit, or delete “cron jobs”. Cette action fera apparaître un éditeur avec lequel vous pouvez ajouter, éditer, ou supprimer "cron jobs". To schedule a job to run at 3:45 PM every Monday add entry like this: Pour planifier un travail à exécuter à 3:45 PM tous les lundis ajouter l'entrée comme ceci:

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. Vous pouvez également utiliser une virgule pour ajouter plusieurs entrées dans un champ. This is useful if you want to run a script thrice a day, with an eight hour interval. Ceci est utile si vous voulez exécuter un script trois fois par jour, avec huit heures d'intervalle. Make sure you do not leave space between entries in a single field, though. Assurez-vous de ne pas laisser d'espace entre les entrées dans un seul domaine, cependant. Your “cron job” entry would look like this: Votre "cron job" entrée ressemblera à ceci:

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. Dans l'exemple ci-dessus le script "db_backup_script.sh" fonctionne à 1 heure du matin, de 9 h et 5 h tous les jours dans le mois de Février et Novembre. There are a lot of cool things that you can do with cron jobs. Il ya beaucoup de choses que vous pouvez faire avec cron jobs. The same works for day, month, and day of week. Il en va de même pour les oeuvres jour, mois et jour de la semaine. Once you get the hang of this try out the following. Une fois que vous aurez le blocage de cette essayer de la manière suivante. Crontab doesn’t only understand numbers, it can also operate on some basic English words: Crontab ne pas comprendre que des chiffres, il peut également fonctionner sur la base des mots anglais:

string explanation chaîne explication
—— ———– - ----
@reboot Run once, the next time the system reboots @ redémarrage Exécuter une fois, la prochaine fois que le système redémarre
@yearly Run once a year, at the beginning of the year @ annuelle Exécuter une fois par an, au début de l'année
@annually Same as @yearly, run once annually an @ @ même que chaque année, exécuter une fois par an
@monthly Run once a month, at the beginning of the month @ mensuel Exécuter une fois par mois, au début du mois
@weekly Run once a week, at the beginning of the week @ hebdomadaire Exécuter une fois par semaine, au début de la semaine
@daily Run once a day, at midnight @ quotidien Exécuter une fois par jour, à minuit
@midnight Same as @daily, run at midnight minuit @ @ même que tous les jours, est exécuté à minuit
@hourly Run once an hour, at the beginning of the hour @ horaire Exécuter une fois par heure, au début de l'heure

So, for example, if you want to run a script at midnight every night, this is what your crontab configuration would look like: Ainsi, par exemple, si vous voulez exécuter un script à minuit tous les soirs, c'est ce que votre configuration crontab serait:

@midnight /opt/scripts/script.sh @ minuit / 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. Pour utiliser "@ minuit" plutôt que "0 0 * * *" aura le même travail et d'exécuter le script demandé à minuit tous les soirs tout en étant beaucoup plus lisible que son homologue numérique. You can also make the use of hyphens to declare a range. Vous pouvez aussi faire l'usage de traits d'union de déclarer une fourchette. In the command below “script.sh” will be executed at the beginning of every hour from 1 AM to 6 AM: Dans la commande ci-dessous "script.sh" sera exécuté au début de chaque heure à partir du 1er AM à 6 heures du matin:

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. Il ya beaucoup plus de choses que vous pouvez faire avec cron. Every sysasmin swears by it, it’s pretty easy to use once you get the hang on it, and very powerful. Chaque sysasmin jure par celui-ci, il est très facile à utiliser une fois que vous êtes sur le pendre, et très puissant. Use this tool wisely, as scheduling a task wrongly can sometimes do a lot of harm. Utilisez cet outil à bon escient, comme la planification d'une tâche à tort peut parfois faire beaucoup de dommages. Reading the “man page” of crontab would be highly recommended. La lecture de la "page de manuel de crontab sera hautement recommandé.

Related Posts: Connexes:
  • 5 Desktop Wallpapers that will increase your productivity Fonds d'écran 5 Desktop qui permettra d'accroître votre productivité
  • Update: Gmail increases storage to 4.2GB Mise à jour: Gmail augmente de 4,2 Go de stockage
  • How to create automated Linux/Unix backups Comment faire pour créer automatisé Linux / Unix sauvegardes
  • 3 Tools to increase iWeb functionality 3 Outils pour accroître les fonctionnalités iWeb
  • How to use dstat to monitor your Linux/UNIX server Comment faire pour utiliser dstat de surveiller votre Linux / Unix
  • Get Simple Help tutorials just like this one in your email inbox every day - for free! Aide simple pour obtenir des tutoriels comme celui-ci dans votre boîte de courriel tous les jours - gratuitement! Just enter your email address below: Il vous suffit d'entrer votre adresse e-mail ci-dessous:

    You can always opt out of this email subscription at any time. Vous pouvez toujours choisir de ne pas cet e-mail abonnement à tout moment.


    Bookmark and Share Signet et part

    { 0 comments… (0 commentaires ... add one now maintenant ajouter un } )

    Leave a Comment Laissez un commentaire

    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> Vous pouvez utiliser ces balises HTML et les attributs: <a href="" title="fete_christel <abbr title="fete_christel <acronym title="fete_christel <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>