[Linux-bruxelles] pas de rc.local sous SuSE?

Ledentm Marc.Ledent at nbb.be
Jeu 27 Nov 15:09:40 CET 2003


ERRATUM: 

Pour désigner une série de jours/heures/minutes dans crontab, il faut spécifier par exemple:

	1-5

au lieu de:

	[1-5]

Donc virer les crochets!

C'est corrigé ci dessous

Mea maxima culpa

NB: concernant la localisation des fichiers crontab, cela peut en effet varier d'une version Unix à l'autre, mais /var/spool/cron/crontabs est assez commun.

Aldo:
> [ clip ]
> voilà, je le dis parce que tu m'en donne l'occasion,
> mais à part ça je trouve que l'effort fait par exemple par 
> Jérôme et le bxlug avec les "articles" est ce que moi 
> j'attend d'une manpage ou d'un howto, et puis, pour moi, un 
> outil doit pouvoir être selfexplanatory, ou tellement clair 
> dans sa fonctionalité que lire une man ou howto devrait être 
> superflus; mais ça ça n'engage que moi, et si les man ne 
> m'aidnt pas c'est aprce qu'ils sont pas assez bien foutus, point barre
> 
> Mais heureusement qu'un bon exemple bien concret puisse me
> faire gagner deux semaines!!! :-)
> 

Je prend la balle au bond (hop):

Suite donc au coup de gueule de Aldo, voici une petite description de crontab:

Crontab est un utilitaire Unix qui existe depuis la nuit des temps (euh non, même avant!). Il permet de programmer des tâches répétitives de façon simple mais absconce sur base d'un fichier texte nommé  /var/spool/cron/crontabs/<username>, donc un fichier par utilisateur. 

Sa structure est simple et se compose d'une ligne par tâche. Les cinq premiers champs déterminent la fréquence d'exécution, les autres sont simplement la commande à exécuter. Les cinq premiers champs sont:

minute (0-59)
heure  (0-23)
jour du mois (1-31)
mois de l'année (1-12)
jour de la semaine (0-6) (dimanche = 0)

exemples simples:

# lance [ commande ] le premier de chaque mois à 20h30
30 20 1 * * [ commande ]

# lance [ commande ] tous les lundis à 20h30
30 20 * * 1 [ commande ]

Subtilités: il est aisé de voir que * signifie 'pour toutes les occurences'. On peut également spécifier des séries pour chaque champ, par exemple:
 
1-5 signifie de 1 à 5 compris
1,3,5 signifie 1, 3 et 5
2,6-12,15,20-23 signifie 2 et 6 à 12 et 15 et 20 à 23

exemples plus concrets:

# lance [ commande ] chaque semaine du lundi au vendredi à 20h30
30 20 * * 1-5 [commande]
# lance [ commande ] tous les jours à 10h30 et 22h30
15 10,22 * * * [ commande ]

Il y avait jadis moyen d'éditer directement le fichier crontab. Ce n'est plus le cas actuellement (c'est certain, j'ai déjà essayé :( )! Donc toujours utiliser 

	crontab -e 

pour éditer le crontab et 

	crontab -l 

pour le voir.

Tout le monde a compris? Même celui qui dort dans le fond près du radiateur?
-------------- section suivante --------------
Un texte encapsulé et encodé dans un jeu de caractères inconnu a été nettoyé...
Nom : NBB_Disclaimer.txt
URL : </pipermail/linux-bruxelles/attachments/20031127/1f34610b/attachment-0002.txt>


Plus d'informations sur la liste de diffusion Linux-bruxelles