doc pour future implémentation

This commit is contained in:
Jephté Clain 2014-08-20 00:13:36 +04:00
parent 1fe49ae1f9
commit d40ca86347
1 changed files with 39 additions and 14 deletions

View File

@ -7,8 +7,8 @@ function display_help() {
uecho "$scriptname: lancer une suite de commande en respectant une planification de type cron
USAGE
$scriptname [options] [/path/to/crontab] [var=value...]
$scriptname -e [/path/to/crontab]
$scriptname [options] [/path/to/uscrontab] [var=value...]
$scriptname -e [/path/to/uscrontab]
$scriptname -l
La première forme du script doit normalement être lancé toutes les minutes par
@ -25,15 +25,16 @@ virtuel
$USCRONTAB_USER
note: le nom virtuel est utilisé pour le verrouillage avec --lock
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.
A chaque lancement de ce script, le fichier /path/to/uscrontab spécifié est
examiné pour déterminer quels commandes doivent être exécutées. 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
Quelles que soient les lignes qui sont sélectionnées pour l'exécution, 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.
définitions de variables à effectuer avant de lancer les commandes.
Les lignes commençant par # sont des commentaires et sont ignorées
@ -126,6 +127,13 @@ Les lignes commençant par # sont des commentaires et sont ignorées
command1
command2
Les deux formats peuvent être utilisés ensemble. Par exemple les lignes
suivantes exécutent command1 et command2 toutes les heures ET à 1h05:
0 * * * *
5 1 * * * command1
command2
== Fonctions disponibles ==
La fonction check_pidfile() est disponible, et permet de vérifier qu'une
@ -175,23 +183,35 @@ Les lignes commençant par # sont des commentaires et sont ignorées
pendant que script2 tourne. Par contre, plusieurs occurences de script3
peuvent tourner en parallèle.
La fonction elogto() permet de spécifier un fichier vers lequel toutes les
sorties sont redirigées.
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é,
de l'utilisateur. Si l'argument /path/to/uscrontab n'est pas spécifié,
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
Désinstaller la planification toutes les minutes du script de la crontab
de l'utilisateur. Si l'argument /path/to/uscrontab est spécifié, cette
instance est désinstallée. Sinon, ne désinstaller que la planification
générique.
-e, --edit
Lancer un editeur pour modifier la crontab spécifiée. Si aucun fichier
Lancer un editeur pour modifier l'uscrontab spécifiée. Si aucun fichier
n'est spécifié, éditer $USCRONTAB_USERFILE
-r, --remove
Supprimer le fichier $USCRONTAB_USERFILE s'il existe
Si l'argument /path/to/crontab est spécifié, il est ignoré.
-a, --add XXX non implémenté
Installer un script uscrontab dans le répertoire approprié. L'argument
doit être de la forme [[name:]/path/to/uscrontab]
Si name n'est pas spécifié, le nom de base du fichier spécifié est
utilisé. Si name est vide ou vaut \$USER (soit $USER en l'occurence),
copier le fichier spécifié vers le chemin $USCRONTAB_USERFILE
Sinon, copier le fichier spécifié vers $USCRONTAB_USERDIR/name
-r, --remove XXX non implémenté
Supprimer le script uscrontab spécifié. L'argument doit être le nom du
script à supprimer. Si l'argument n'est pas spécifié ou vaut \$USER
(soit $USER en l'occurence), supprimer le fichier $USCRONTAB_USERFILE
s'il existe
-l, --list
Si l'argument /path/to/crontab est spécifié, afficher le contenu de ce
fichier. Sinon, lister les contenus des fichiers crontab qui sont
@ -203,6 +223,11 @@ OPTIONS
$USCRONTAB_USERDIR
-n, --fake
Afficher au lieu de les exécuter les commandes qui doivent être lancées
--show-ctnow XXX non implémenté
Afficher l'heure de référence au format crontab 'min hou day mon dow'
--force-ctnow 'min hou day mon dow' XXX non implémenté
Pour le développement, forcer la valeur de l'heure de référence. Il faut
respecter le format, sinon les résultats ne sont pas garantis.
OPTIONS AVANCEES
--lock LOCKFILE