logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

SCRIPT Enregistrer et visionner des sessions dans le terminal

Préalable

Le logiciel script n'a rien à voir avec les scripts shell.
Il peut être utilisé dans n'importe quel terminal (et non «shell») pour enregistrer les entrées et sorties de celui-ci. C'est un peu comme une capture vidéo de l'écran, sauf que là c'est une capture de terminal (caractères de contrôle compris).

Cela ne capture pas seulement les entrées/sorties des scripts, mais de tout logiciel lancé dans le terminal. C'est donc plutôt lié au terminal qu'au shell.

Exemple

script -t/tmp/session.t -c alsamixer /tmp/session.s

Faire mumuse dans alsamixer, changer le volume par exemple, puis quitter avec la touche Échap.
Visionner la session :

scriptreplay -s /tmp/session.s -t /tmp/session.t

On remarquera qu'ici script et scriptreplay n'ont lancé aucun shell.
On aurait même pu se passer complètement de shell en exécutant les commandes directement dans des terminaux.

Merci au captnfab pour tout ces éclaircissements ajoutés ! :-)

Utilisation

SCRIPT permet d'enregistrer dans un fichier toutes les commandes que vous tapez ainsi que leurs sorties d'écran.

Le fichier résultant peut être utile dans plusieurs cas :

  • Sauvegardez tout ce qui vous est demandé de faire lors d'une explication en direct.
  • Faire un script d'une liste de commandes habituelles.
  • Ecrire un article pour un tuto. :-D

Enregistrer

Pour enregistrer à partir du répertoire de destination, tapez :

script /chemin/nom-fichier

Arrêter d'enregistrer

Pour ne plus enregistrer dans le fichier, il suffit de taper :

exit

contributeurs:jonesy http://wiki.slackware-fr.org

Pour contempler vos belles commandes:

cat /chemin/nom-fichier

Enregistrer dans l'optique de rejouer avec scriptreplay

script -tFichierTiming fichierTest
# j'aurais pu aussi utiliser:
# script --timing=FichierTiming fichierTest
 
# je saisis de belles commandes
 
exit #je sors
l'option -t, ou –timing=, est obligatoire

maintenant on replay:

scriptreplay FichierTiming fichierTest
# on aurait pu aussi utiliser:
# scriptreplay -tFichierTiming  fichierTest

attention: scriptreplay est seulement garanti de fonctionner proprement s'il tourne sur le même type de terminal où il a été enregistré. voir

man scriptreplay

donc ce n'est pas destiné à partager une session terminal sur une autre machine ou avec quelqu'un d'autre.

Pour cela, il y a: TermRecord : publier et partager facilement une session Terminal

1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
doc/systeme/script.txt · Dernière modification: 30/04/2023 13:25 par arpinux

Pied de page des forums

Propulsé par FluxBB