ANNOTATE-OUTPUT(1)

NOM
annotate-output - Annoter la sortie d’un programme avec la date et les flux

SYNOPSIS
annotate-output [options] [--] programme [paramètres ...]

DESCRIPTION
annotate-output exécute le programme avec paramètres comme arguments et préfixe les lignes affichées avec une chaîne formatée suivie d’un indicateur pour le flux dans lequel la ligne a été écrite, suivi d’un deux-points et d’une seule espace.
Les indicateurs de flux sont I pour les informations émises par annotate-output ainsi que O pour STDOUT et E pour STDERR du programme.

OPTIONS

+FORMAT
    Une chaîne de formatage qui peut utiliser les séquences de conversion de l’utilitaire date(1). La chaîne générée est séparée de l’indicateur de flux qui suit par une seule espace. Ce formatage peut être remplacé à l’aide d’options subséquentes spécifiant la chaîne de formatage.
    Valeur par défaut "%H:%M:%S".

--raw-date-format FORMAT
    Une chaîne de formatage qui peut utiliser les séquences de conversion de l’utilitaire date(1). Il n’y a pas de séparateur entre la chaîne générée et l’indicateur de flux qui suit. Ce formatage peut être remplacé à l’aide d’options subséquentes spécifiant la chaîne de formatage.

--  Met fin à l’analyse des options (sauf en tant qu’argument d’une option).

-h, --help
    Afficher un message d’aide.

VALEURS DE RETOUR
Si le programme est invoqué, le code de retour d’annotate-output est celui du programme ; sinon annotate-output se termine en renvoyant l’une des valeurs suivantes :

0   -h or --help a été indiqué.

125 Une erreur est survenue dans annotate-output.

126 Le programme a été trouvé mais n’a pas pu être exécuté.

127 Le programme n’a pas été trouvé ou n’a pas été spécifié.

EXEMPLE

$ annotate-output make
21:41:21 I: make démarré
21:41:21 O: gcc -Wall programme.c
21:43:18 E: programme.c: n’a pas compilé et durée de diagnostic dépassée
21:43:19 E: collect2: ld a retourné un code de retour 1
21:43:19 E: make: *** [all] Erreur 1
21:43:19 I: terminé avec un code de retour 2

MISES EN GARDE ET BOGUES
Puisque STDOUT et STDERR sont traités en parallèle, il peut arriver que quelques lignes reçues sur STDOUT soient affichées avant des lignes de STDERR (et inversement).
C’est malheureusement très difficile à corriger avec la stratégie d’annotation choisie. Une solution serait de passer à un suivi par PTRACE. Donner avec la valeur nice une (bien) plus grande priorité au programme exécuté pourrait cependant faire que ce comportement arrive moins fréquemment.

annotate-output nécessite que le programme produise des lignes de texte (telles que spécifiées par POSIX) sur STDOUT et STDERR.
En particulier, le comportement est indéterminé quand les lignes produites contiennent des octets NUL. Le comportement peut aussi être indéterminé si les lignes produites contiennent des octets qui ne forment pas des caractères valables dans la localisation actuelle.

Lorsqu’un programme interactif demande une entrée, la question peut ne pas être affichée tant que vous n’avez pas répondu. Cela peut donner l’impression que le programme ainsi lancé a gelé, alors que ce n’est pas le cas.

annotate-output est implémenté en tant que script en langage de commandes du shell. Les shells définissent généralement des variables (shell) au démarrage et peuvent placer l’attribut « export » sur certaines d’entre elles. De plus ils initialisent des variables (shell) depuis leur propre environnement (tel que paramétré par l’invocateur du shell, soit celui d’annotate-output) et placent l’attribut « export » sur celles-ci.
Il en résulte que quand l’invocateur de annotate-output souhaite définir une variable d’environnement du programme, celle-ci peut être remplacée ou d’autres variables peuvent être ajoutées par le shell.
Par ailleurs, il n’est en principe pas permis de définir des variables d’environnement (par exemple « . ») qui ne sont pas des noms valables de variables shell. POSIX ne spécifie pas si de telles variables d’environnement sont exportées vers les programmes lancés depuis le shell. Aucune présomption ne peut donc être faite quant à l’exportation correcte ou même incorrecte de telles variables vers le programme.

VOIR AUSSI
date(1)

AIDE
Ce programme est maintenu par la communauté (comprendre : vous allez devoir le corriger vous-même). Les patches sont toutefois appréciés, ainsi que toute sorte de retour (positif ou non).

AUTEUR
Cette page de manuel a été écrite par Jeroen van Wolffelaar <jeroen@wolffelaar.nl> et peut être redistribuée sous les termes de la licence GPL version 2. Le script annotate-output lui-même a été réécrit par Johannes Schauer Marin Rodrigues <josch@debian.org> et peut être redistribué sous les termes de la licence Expat.

TRADUCTION
Ce document est une traduction, maintenue à lʼaide de lʼoutil po4a <https://po4a.org/> par lʼéquipe de traduction francophone du projet Debian.

Plusieurs traducteurs dont Nicolas François, Guillaume Delacour, Cyril Brulebois, Thomas Huriaux, David Prévot et Xavier Guimard ont contribué aux traductions.

Lʼéquipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. Veuillez signaler toute erreur de traduction en écrivant à <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le paquet devscripts.

La version anglaise la plus à jour de ce document est toujours consultable en ajoutant lʼoption « -L C » à la commande man.