script(1) Faire une transcription d'une session d'un terminal.

SYNOPSIS

script [options] [fichier]

DESCRIPTION

script fait une transcription de tout ce qui est affiché sur le terminal. C'est utile pour des étudiants qui ont besoin de la sauvegarde d'une session interactive comme preuve des travaux, le fichier de transcription pouvant être ensuite imprimé avec lpr(1).

Si le paramètre fichier est fourni, script sauvegarde l’affichage dans ce fichier. Si aucun nom de fichier n'est fourni, l’affichage est sauvegardé dans le fichier typescript.

OPTIONS

-a, --append
Ajouter la transcription à la fin du fichier ou de typescript, en conservant le contenu du fichier.
-c, --commande commande
Exécuter la commande au lieu d’un interpréteur de commandes interactif. Cela facilite la capture de sortie d'un programme qui se comporte différemment si sa sortie est un terminal ou non.
-e, --return
Renvoyer le code de retour du processus fils. Le format utilisé est le même que celui de sortie de bash quand le code de retour est 128+n.
-f, --flush
Forcer l'écriture de la sortie après chaque demande d'écriture. C'est pratique pour une coopération à distance : une personne exécute « mkfifo toto; script -f toto » et une autre peut superviser en temps réel ce qui se passe avec « cat toto ».
--force
Permettre à la destination par défaut, c'est-à-dire le fichier typescript, d'être un lien direct ou symbolique. La commande suivra le lien symbolique.
-q, --quiet
Être silencieux (ne pas écrire les messages de départ ni de fin, ni sur la sortie standard, ni dans le fichier de transcription).
-t, --timing[=fichier]
Ajouter des informations temporelles sur la sortie d'erreur, ou vers le fichier donné. Ces informations contiennent deux champs séparés par des espaces. Le premier champ indique le temps passé depuis la dernière sortie. Le second champ indique le nombre de caractères ayant été sortis cette fois-ci. Ces informations peuvent être utilisées pour rejouer une transcription avec des délais de temps de frappe et de sortie réalistes.
-V, --version
Afficher les informations sur la version et quitter.
-h, --help
Afficher un texte d'aide puis quitter.

NOTES

script s'arrête quand le sous-interpréteur de commandes exécuté se termine (un Ctrl-D pour l'interpréteur de commandes de type Bourne comme sh(1) et exit, logout ou Ctrl-d (si ignoreeof n'est pas définie) pour les interpréteurs de commandes de type C comme csh(1)).

Certaines commandes interactives, comme vi(1), créent des parasites dans le fichier de transcription. script fonctionne mieux avec les commandes qui ne manipulent pas l'écran, les résultats cherchent à émuler un terminal brut.

Exécuter script dans des interpréteurs de commandes non interactifs n’est pas recommandé. L’interpréteur de commandes interne de script est toujours interactif, et cela pourrait avoir pour conséquence des résultats imprévus. Si vous utilisez script dans le fichier d’initialisation de l’interpréteur de commandes, évitez d’entrer dans une boucle infinie. Utilisez par exemple le fichier profile qui n’est lu que par les interpréteurs de commandes de connexion :

if test -t 0 ; then
    script
    exit
fi

Vous devriez aussi éviter l’utilisation de script dans les tubes de commande, car script peut lire plus d’entrée que vous pourriez attendre.

ENVIRONNEMENT

Les variables d'environnement suivantes sont utilisées par script :
SHELL
Si la variable d'environnement SHELL existe, l'interpréteur de commandes engendré par script (avec fork) sera cet interpréteur de commandes. Si SHELL n'est pas définie, l’interpréteur de commandes sera supposé de type Bourne (la plupart des interpréteurs de commandes définissent cette variable automatiquement).

HISTORIQUE

La commande script est apparue pour la première fois dans BSD 3.0.

BOGUES

script place tout dans le fichier journal, dont les changements de ligne et les espaces arrière. Ce n'est pas ce à quoi un utilisateur pourrait naïvement s'attendre.

DISPONIBILITÉ

La commande script fait partie du paquet util-linux, elle est disponible sur l’archive du noyau Linux