From 5d75e57f543c91400b90c3fbb701524cec96a809 Mon Sep 17 00:00:00 2001 From: Jephte CLAIN Date: Tue, 19 Aug 2014 11:20:02 +0400 Subject: [PATCH] maj doc --- uscrontab | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/uscrontab b/uscrontab index a9dbf29..7710371 100755 --- a/uscrontab +++ b/uscrontab @@ -15,21 +15,26 @@ La première forme du script doit normalement être lancé toutes les minutes pa une tâche cron. Utiliser l'option --install pour ajouter automatique la ligne dans la crontab de l'utilisateur. -Si aucun fichier n'est spécifié, fusionner s'il existe le fichier +Avec la première forme du script, le fichier spécifié est traité. Si aucun +fichier n'est spécifié, fusionner s'il existe le fichier $USCRONTAB_USERFILE avec chacun des fichiers du répertoire $USCRONTAB_USERDIR -puis exécuter le fichier résultat avec le nom virtuel +dans un fichier temporaire, puis exécuter le fichier résultat avec le nom +virtuel $USCRONTAB_USER note: le nom virtuel est utilisé pour le verrouillage avec --lock -A chaque lancement du script, il examine quels scripts doivent être exécutés -dans le fichier crontab spécifié. Ce fichier est composé de lignes dans un -format particulier, qui sont analysées et traitées dans l'ordre. +A chaque lancement du script, le fichier crontab spécifié est examiné pour +déterminer quels scripts doivent être exécutés. Ce fichier est composé de lignes +dans un format particulier, qui sont analysées et traitées dans l'ordre. Quelles que soient les lignes qui sont sélectionnées pour le lancement, elles sont garanties de s'exécuter dans l'ordre du fichier, l'une après l'autre. +Les définitions var=value mentionnées sur la ligne de commande sont des +définitions de variables à effectuer avant de lancer les scripts. + Les lignes commençant par # sont des commentaires et sont ignorées == Définitions de variables et exécution de commandes == @@ -69,8 +74,8 @@ Les lignes commençant par # sont des commentaires et sont ignorées var?=default - Les lignes de la forme suivante permettent d'exécuter une commande - quelconque: + Les lignes de la forme suivante permettent d'exécuter une commande qui est + exécutée systématiquement et ignore la planification: \$one-line-command @@ -174,7 +179,8 @@ OPTIONS -A, --install Installer une planification toutes les minutes du script dans la crontab de l'utilisateur. Si l'argument /path/to/crontab n'est pas spécifié, - c'est une planification générique qui exécute les fichiers par défaut. + c'est une planification générique qui exécute les fichiers par défaut + qui est installée. -R, --uninstall Désinstaller la planification toutes les minutes du script du crontab de l'utilisateur. Si l'argument /path/to/crontab est spécifié, cette @@ -272,7 +278,7 @@ if [ "$action" == "edit" ]; then fi enote "Edition de $crontab" if [ ! -f "$crontab" ]; then - touch "$crontab" + touch "$crontab" || die chmod 640 "$crontab" fi "${EDITOR:-vi}" "$crontab" @@ -391,9 +397,10 @@ elif [ "$action" == "run" ]; then echo "$*" else edebug "$*" - if [ "${1#check_pidfile }" != "$1" ]; then - # cas particulier, c'est une fonction à exécuter dans le - # contexte courant, et non pas dans un sous-shell + if [ "${1#check_pidfile }" != "$1" -o "${1#remove_pidfile }" != "$1" ]; then + # cas particulier: les fonctions check_pidfile() et + # remove_pidfile() doivent être exécutée dans le contexte + # courant, et non pas dans un sous-shell eval "$*"; ec=$? else (eval "$*"); ec=$?