Nous avons déjà publié un guide expliquant comment enregistrer les commandes dans le terminal lui-même et les utiliser à la demande . Il est très utile pour ceux qui ne veulent pas mémoriser des commandes Linux longues et complexes. Aujourd'hui, dans ce guide, nous allons voir comment enregistrer tout ce que vous faites dans Terminal à l'aide de script commande.
Vous avez peut-être exécuté une commande, créé un répertoire ou installé une application dans Terminal. La commande de script enregistre simplement tout ce que vous avez fait dans le terminal. Vous pouvez ensuite les consulter si vous voulez savoir ce que vous avez fait il y a quelques heures ou quelques jours.
Je sais, je sais, nous pouvons utiliser les touches fléchées HAUT/BAS ou l'historique commande pour afficher les commandes en cours d'exécution. Cependant, vous ne pouvez pas afficher la sortie de ces commandes. Mais, la commande Script enregistre et affiche les activités complètes de la session du terminal.
La commande de script crée un tapuscrit de tout ce que vous faites dans le terminal. Peu importe si vous installez une application, créez un répertoire/fichier, supprimez un dossier. Tout sera enregistré, y compris les commandes et les sorties respectives.
La commande de script sera utile à ceux qui veulent un enregistrement papier d'une session interactive comme preuve d'une affectation. Que vous soyez étudiant ou tuteur, vous pouvez faire une copie de tout ce que vous faites dans le terminal ainsi que de toutes les sorties.
Enregistrer tout ce que vous faites dans le terminal à l'aide de la commande de script sous Linux
La commande de script fait partie de util-linux package sur les systèmes basés sur RPM et bsdutils package sur les systèmes basés sur DEB et il est préinstallé sur la plupart des systèmes d'exploitation Linux modernes. Alors, ne nous soucions pas de l'installation.
Allons-y et voyons comment l'utiliser en temps réel.
Exécutez la commande suivante pour démarrer l'enregistrement de la session Terminal.
$ script -a my_terminal_activities
Où, -a flag est utilisé pour ajouter la sortie au fichier ou au texte dactylographié, en conservant le contenu précédent. La commande ci-dessus enregistre tout ce que vous faites dans le terminal et ajoute la sortie à un fichier appelé 'my_terminal_activities' et enregistrez-le dans votre répertoire de travail actuel.
Exemple de sortie :
Script started, file is my_terminal_activities
Maintenant, exécutez des commandes Linux aléatoires dans votre terminal.
$ mkdir ostechnix
$ cd ostechnix/
$ touch hello_world.txt
$ cd ..
$ uname -r
Après avoir exécuté toutes les commandes, terminez la session de la commande 'script' à l'aide de la commande :
$ exit
Après avoir tapé exit, vous obtiendrez la sortie suivante.
exit Script done, file is my_terminal_activities
Enregistrez tout ce que vous faites dans le terminal à l'aide de la commande de script sous Linux
Comme vous le voyez, les activités du terminal ont été stockées dans un fichier appelé 'my_terminal_activities' et l'enregistre dans le répertoire de travail courant.
Vous pouvez également enregistrer les activités du terminal dans un fichier à un emplacement différent comme ci-dessous.
$ script -a /home/ostechnix/documents/myscripts.txt
Toutes les commandes seront stockées dans /home/ostechnix/documents/myscripts.txt fichier.
Afficher les activités enregistrées du terminal
Pour voir vos activités Terminal, ouvrez simplement ce fichier dans n'importe quel éditeur de texte ou affichez-le simplement en utilisant le 'cat' commande.
$ cat my_terminal_activities
Exemple de résultat :
Script started on 2019-10-22 12:07:37+0530 [email protected]:~$ mkdir ostechnix [email protected]:~$ cd ostechnix/ [email protected]:~/ostechnix$ touch hello_world.txt [email protected]:~/ostechnix$ cd .. [email protected]:~$ uname -r 5.0.0-31-generic [email protected]:~$ exit exit Script done on 2019-10-22 12:08:10+0530
Afficher les activités du terminal
Comme vous le voyez dans la sortie ci-dessus, la commande de script a enregistré toutes mes activités Terminal, y compris l'heure de début et de fin de la commande de script. Génial, n'est-ce pas ? La raison d'utiliser la commande de script est qu'elle n'enregistre pas seulement les commandes, mais également la sortie des commandes. Pour faire simple, la commande Script enregistrera tout ce que vous faites sur le terminal.
Jouer les sessions de terminal enregistrées
Parfois, vous voudrez peut-être rejouer les sessions Terminal, comme un GIF animé, au lieu de simplement le visualiser. Si c'est le cas, vous pouvez facilement le faire avec la commande Scriptreplay. Reportez-vous au guide suivant pour savoir comment lire les sessions Terminal enregistrées.
- Comment lire les sessions de terminal enregistrées à l'aide de la commande Scriptreplay
Enregistrer une seule commande
Il est également possible d'enregistrer la sortie d'une seule commande en utilisant -c drapeau comme ci-dessous.
$ script -c "lsb_release -a" -a my_terminal_activities
Exemple de résultat :
Script started, file is my_terminal_activities No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 18.04.3 LTS Release: 18.04 Codename: bionic Script done, file is my_terminal_activities
Pour afficher la sortie de la commande enregistrée, exécutez simplement :
$ cat my_terminal_activities
C'est très utile pour montrer la démonstration de l'utilisation d'une commande spécifique aux étudiants ou pour partager le résultat d'une commande avec vos collègues ou votre équipe d'assistance.
Enregistrer les sessions Terminal avec des horodatages
En tant que l'un de nos lecteurs Mr.Alastair Montgomery mentionné dans la section des commentaires ci-dessous, nous pourrions configurer un alias qui horodaterait les sessions enregistrées.
Créez un alias pour la commande de script comme ci-dessous.
$ alias rec=’script -aq ~/term.log-$(date “+%Y%m%d-%H-%M”)’
Maintenant, entrez simplement la commande suivante pour commencer à enregistrer le terminal.
$ rec
Désormais, toutes vos activités Terminal seront enregistrées dans un fichier texte avec horodatage, par exemple term.log-20191022-12-16 .
Enregistrer les activités du terminal avec des horodatages
Suggestion de lecture :
- Asciinema – Enregistrer les sessions du terminal et les partager sur le Web
- Mettre en signet les commandes Linux pour faciliter les appels répétés
- Appliquez des balises aux commandes Linux pour les récupérer facilement de l'historique
- Rappel facile des commandes Linux oubliées à l'aide d'Apropos
- Animal :un gestionnaire d'extraits de code simple en ligne de commande
Enregistrer les sessions Terminal en mode silencieux
Comme vous l'avez remarqué, lorsque nous lançons la commande de script pour enregistrer la session du terminal, elle affiche un message de bienvenue - "Script démarré, le fichier est my_terminal_activities" et affiche "Script terminé, le fichier est my_terminal_activities" après avoir terminé l'enregistrement. Si vous ne souhaitez pas afficher ces messages, vous pouvez exécuter la commande de script en mode silencieux en utilisant -q drapeau comme ci-dessous.
$ script -a -q my_terminal_activities
Pour plus de détails, consultez la page de manuel.
$ man script
Conclusion
Comme je l'ai dit, la commande de script serait utile pour les étudiants, les enseignants et tous les utilisateurs Linux qui souhaitent conserver l'enregistrement de leurs activités Terminal. Même s'il existe de nombreux outils CLI et GUI disponibles pour ce faire, la commande de script est le moyen le plus simple et le plus rapide d'enregistrer les activités de la session Terminal.