Soumet, modifie, répertorie ou supprime les travaux cron.
crontab [ -e [NomUtilisateur] | -l [NomUtilisateur] | -r [NomUtilisateur] | -v [NomUtilisateur] | Fichier ]
La commande crontab soumet, modifie, répertorie ou supprime les travaux cron. Un travail cron est une commande exécutée par le démon cron à des intervalles réguliers et planifiés. Pour soumettre un travail cron, spécifiez la commande crontab avec l'indicateur -e. La commande crontab appelle une session d'édition qui vous permet de créer un fichier crontab. Vous pouvez créer des entrées pour chaque travail cron de ce fichier. Chaque entrée doit être dans un format acceptable par le démon cron. Pour obtenir des informations sur la création des entrées, voir Le format d'entrée du fichier crontab.
Lorsque vous avez terminé de créer des entrées et que vous quittez le fichier, la commande crontab le copie dans le répertoire /var/spool/cron/crontabs et le place dans un fichier portant votre nom d'utilisateur. Si un fichier portant votre nom existe déjà dans le répertoire crontabs, la commande crontab l'écrase.
Sinon, vous pouvez créer un fichier crontab en spécifiant le paramètre Fichier. Si le fichier existe, il doit être dans le format accepté par le démoncron. S'il n'existe pas, la commande crontab appelle l'éditeur. Si la variable d'environnement EDITOR existe, la commande appelle l'éditeur qu'elle spécifie. Dans le cas contraire, la commande crontab utilise l'éditeur vi.
Pour répertorier le contenu de votre fichier crontab, spécifiez la commande crontab avec l'indicateur -l. Pour supprimer un fichier existant, utilisez l'indicateur -r.
Le paramètre NomUtilisateur facultatif peut être utilisé par le propriétaire du fichier crontab ou par le superutilisateur pour modifier, répertorier, supprimer ou vérifier l'état des travaux cron de l'utilisateur spécifié. Si le paramètre NomUtilisateur n'est pas valide, un message d'erreur est généré et le programme s'arrête.
Si le paramètre facultatif NomUtilisateur n'est pas spécifié, les indicateurs crontab seront disponibles pour le superutilisateur et l'utilisateur en cours.
Seul le superutilisateur ou le propriétaire du fichier crontab peut utiliser NomUtilisateur après les indicateurs -e , -l, -r et -v pour modifier, répertorier, supprimer ou vérifier le fichier crontab de l'utilisateur spécifié.
Le démon cron exécute des commandes en fonction des entrées du fichier crontab. Le démon cron vous envoie par courrier toutes les sorties ou les erreurs de commande, sauf si vous redirigez la sortie d'un travail cron vers une sortie ou une erreur standard. Si vous n'indiquez pas correctement un travail cron dans votre fichier crontab, le démon cron n'exécutera pas le travail.
Le démon cron examine les fichiers crontab seulement lorsqu'il est initialisé. Lorsque vous apportez des modifications à votre fichier crontab à l'aide de la commande crontab, un message indiquant la modification est envoyé au démon cron. Ceci élimine le besoin de rechercher les nouveaux fichiers ou ceux qui ont été modifiés à des intervalles réguliers et planifiés.
Les fichiers /var/adm/cron/cron.allow et /var/adm/cron/cron.deny déterminent les utilisateurs qui peuvent utiliser la commande crontab. Un superutilisateur peut créer, modifier ou supprimer ces fichiers. Les entrées de ces fichiers sont les noms de connexion de l'utilisateur avec un nom par ligne. Si votre ID de connexion est associé à plusieurs noms de connexion, la commande crontab utilisera le premier nom de connexion qui se trouve dans le fichier /etc/passwd, quel que soit le nom de connexion que vous utilisez réellement. Et pour permettre à des utilisateurs de démarrer des travaux cron, l'attribut de démon du fichier /etc/security/user doit être défini sur la valeur TRUE, à l'aide de la commande chuser.
Voici un exemple de fichier cron.allow :
racine nick dee sarah
Si le fichier cron.allow existe, seuls les utilisateurs dont les noms de connexion y figurent pourront utiliser la commande crontab. Le nom de connexion du superutilisateur doit apparaître dans le fichier cron.allow, si le fichier existe. Un administrateur système peut empêcher un utilisateur d'utiliser la commande crontab en répertoriant son nom de connexion dans le fichier cron.deny. Si seul le fichier cron.deny existe, tout utilisateur dont le nom n'apparaît pas dans le fichier peut utiliser la commande crontab.
Un utilisateur ne peut pas utiliser la commande crontab si l'une des situations suivantes existent :
Si les fichiers cron.allow et cron.deny n'existent pas, seule une personne dotée des droits du superutilisateur pourra soumettre un travail avec la commande crontab.
Un fichier crontab contient des entrées pour chaque travail cron. Les entrées sont séparées par des caractères de retour à la ligne. Chaque entrée de fichier crontab contient six zones séparées par des espaces ou des tabulations qui ont la forme suivante :
minute heure jour_du_mois mois jourdelasemaine commande
Ces zones admettent les valeurs suivantes :
| minute | De 0 à 59 |
| heure | De 0 à 23 |
| jour_du_mois | De 1 à 31 |
| mois | De 1 à 12 |
| jourdelasemaine | De 0 à 6 pour une semaine allant du dimanche au samedi |
| command | une commande shell |
Vous devez indiquer une valeur pour chaque zone. Ces zones peuvent contenir les éléments suivants (à l'exception de la zone commande) :
Remarque : tout caractère précédé d'une barre oblique inversée (y compris le symbole %) sera traité littéralement. La spécification des jours peut se faire via deux zones : celle du jour du mois et celle du jour de la semaine. Si vous spécifiez les deux sous la forme d'une liste d'éléments, ils seront tous les deux appliqués. Par exemple, l'entrée0 0 1,15 * 1 commandexécutera la commande lors du premier et du quinzième jour de chaque mois, ainsi que chaque lundi. Pour spécifier des jours via une seule zone, l'autre zone doit contenir un * .
Le démon cron exécute la commande nommée dans la sixième zone à l'heure et à la date sélectionnée. Si vous incluez un % (signe de pourcentage) dans la sixième zone, le démon cron considère tout ce qui le précède comme l'appel de commande et rend tout ce qui le suit disponible pour la saisie standard, sauf si vous annulez le signe de pourcentage (\%). Les lignes vides et celles dont le premier caractère est le signe # seront ignorées. Si les arguments de la commande contiennent une barre oblique inversée ('\'), celle-ci doit être précédée d'une autre barre oblique.
Le démon cron lance un sous-interpréteur de commandes depuis votre répertoire PERSONNEL. Si vous planifiez une commande à exécuter lorsque vous n'êtes pas connecté et que vous voulez que des commandes de votre fichier .profile soient exécutées, la commande doit lire votre fichier .profile explicitement.
Le démon cron fournit un environnement par défaut pour chaque interpréteur de commandes, tout en définissant les paramètres HOME, LOGNAME, SHELL (=/usr/bin/sh) et PATH (=/usr/bin).
Evénements d'audit : si le sous-système de contrôle a été correctement configuré et est activé, la commande crontab génère l'enregistrement d'audit suivant (événement) à chaque exécution de la commande :
Cette commande renvoie les valeurs de fin suivantes :
| 0 | Exécution réussie. |
| >0 | Une erreur s'est produite. |
crontab mycronjobsLe fichier sera copié de la façon suivante :
/var/spool/cron/crontabs/<nomutilisateur>où <nomutilisateur> est votre nom d'utilisateur actuel.
0 * * * * écho L'heure est la `date` . >/dev/console
30 6 * * 1,3,5 /usr/bin/calendar
30 6 * * * /usr/bin/calendar
0 0 * 8 * /u/harry/bin/maintenance
0 16 * 12 5 /usr/sbin/wall%BONNES FETES!%N'oubliez pas de rendre votre carte de pointage.Le texte suivant le % (signe de pourcentage) définit la saisie standard de la commande wall comme étant :
BONNES FETES! N'oubliez pas de rendre votre carte de pointage.