gapz.tuxfamily.org, 10 février 2007, gapz — J'avais prévu de faire il y a quelques semaines de ça un petit billet sur ce qui permet d'enregistrer et de rejouer ce que l'on pourrait appeler une "console session". Mais entre temps quelqu'un a fait un billet sur le duo script/scriptreplay.
Après avoir gentillement demandé l'autorisation de traduire son billet (malgrès que son blog soit sous licence Creative Commons Attribution-ShareAlike 2.5, j'aime bien prévenir) je vais donc reprendre une grande partie de ce billet en français.
Vous êtes vous déja demandé comment capturer facilement une "console session" sans avoir à passer par un logiciel d'enregistrement vidéo lourd et peu adapté ?
C'est pour cela qu'a été développé script :
- Si vous lancer script sans paramètre la "session" est
enregistrée dans un fichier nommé
typescript
. Vous pouvez aussi spécifier le nom du fichier de la manière :script fichier.log
. - Pour arrêter l'enregistrement il suffit de faire CTRL+D ou
simplement
exit
. - Vous pouvez désormais voir le log via
less -r nom_du_fichier
(il contient les séquences d'échappement, les retours à la ligne etc..), avec un simple éditeur de texte l'affichage ne sera donc pas "propre". Vous pouvez aussi simplement l'afficher dans le terminal avec la commandecat nom_du_fichier
.
C'est alors que vous vous demandez sans doute comment rejouer cette
session ? (ou pas). Il faut d'abord savoir qu'il faut enregistrer un
repère temporel pour pouvoir rejouer la session
via scriptreplay
:
- Il vous suffit de faire
script -t 2> timing
. - Maintenant si vous désirez rejouer la session il suffit
simplement d'un
scriptreplay timing
.
Pour plus d'information consultez le manuel de script et scriptreplay. Sachez aussi qu'il existe d'autre outil comme ttyrec.
Merci à Hermann Uwe.