Asciinema est un utilitaire de ligne de commande libre et open source qui peut être utilisé pour enregistrer les séances de terminal dans les distributions Linux. Il peut capturer les commandes et leur sortie en haute qualité, et produit du texte net et clair, mieux que les autres outils d'enregistrement d'écran et de screencasting utilisés pour capturer une session de bureau entière.
Caractéristiques principales de l'asciinema
En plus de l'enregistrement de sortie du texte visible dans un émulateur de terminal, Asciinema peut également ajouter une session d'enregistrement en cours à une sortie précédemment enregistrée, permettant aux utilisateurs de créer un flux continu à partir de plusieurs moulages.
La sortie capturée par Asciinema peut être lu à tout moment sur votre installation Linux. Vous pouvez également télécharger la sortie capturée sur le site Web d'Asciinema et la partager avec d'autres. Si vous avez un site Web ou une application Web, vous pouvez intégrer la sortie capturée et la lire dans un navigateur Web ou un conteneur d'application Web.
Notez que la sortie capturée n'est pas rendue dans des formats vidéo comme MP4 et WebM. Il est rendu dans un format personnalisé appelé «asciicast» et peut être joué par asciinema uniquement. Un lecteur basé à JavaScript pour lire la sortie Asciicast capturée dans les navigateurs Web est disponible sur le site Web Asciinema.
Installation de l'asciinema en Linux
Vous pouvez installer Asciinema dans la dernière version d'Ubuntu en exécutant la commande ci-dessous:
$ sudo apt installer asciinema
Vous pouvez également l'installer à l'aide du PIP Package Manager dans Ubuntu et d'autres distributions Linux. Pour ce faire, exécutez les deux commandes suivantes dans Ubuntu:
$ sudo apt installer python3-Pip
$ pip3 installer asciinema
Plus de packages et de autres instructions d'installation spécifiques à la distribution sont disponibles ici.
Utilisation de l'asciinema dans Linux
Pour commencer l'enregistrement de la sortie du terminal, exécutez la commande asciinema dans le format suivant:
$ asciinema rec
Asciinema commencera à enregistrer la sortie du shell dès que vous exécutez la commande. Il vous montrera un message dans le terminal, comme indiqué dans la capture d'écran ci-dessous:
Comme vous pouvez le voir dans la sortie ci-dessus, Asciinema a commencé à enregistrer un asciicast qui sera stocké dans le dossier «/ tmp» une fois l'enregistrement terminé. Tout ce que vous tapez ou exécutez dans le terminal une fois que l'enregistrement a commencé, sera capturé et enregistré dans un «.Fichier coulé. L'enregistrement peut être arrêté en appuyant sur la touche ou en tapant la commande «Exit».
Après avoir arrêté l'enregistrement en cours, vous serez invité à l'enregistrer sur votre disque dur local ou à le télécharger sur le site officiel de l'Asciinema. Vous pouvez appuyer sur la touche pour télécharger Asciicast capturé en ligne ou vous pouvez appuyer sur le raccourci du clavier pour l'enregistrer sur le disque local (comme indiqué dans la capture d'écran ci-dessous):
Par défaut Asciinema enregistre la sortie capturée dans le dossier «TMP». Pour enregistrer un asciicast dans un emplacement personnalisé sur un disque de stockage local sans le télécharger en ligne, fournissez un chemin de fichier vers la commande «Rec». Voici un exemple de commande:
$ asciinema rec "$ home / downloads / fichier.jeter"
Pour télécharger manuellement un Asciicast capturé sur le site Web Asciinema, exécutez une commande dans le format suivant (Remplacez le chemin du fichier au besoin):
$ asciinema upload / full / path / to / fichier.jeter
Pour ajouter un nouvel enregistrement à un asciicast existant, utilisez la commande «Ajouter» en suivant le format (une nouvelle session d'enregistrement démarrera et la sortie sera annexée pour fournir «.Cast ”Fichier):
$ ASCIINEMA REC --APPEND / FULL / PATH / TO TO / Fichier.jeter
Une fois que vous avez un «.Fichier Cast ”capturé, vous pouvez le lire en utilisant la commande suivante (remplacer le chemin du fichier au besoin):
$ ASCIINEMA Play Full / Path / To / Fichier.jeter
Voici une petite démo montrant Asciinema asciicast en action:
Notez que c'est une animation GIF réduite, elle ne montre pas la sortie capturée en toute sa qualité en haute définition. Vous devez jouer le ".Lancez-vous sur votre distribution Linux pour la regarder en pleine qualité ou vous devez intégrer la sortie capturée dans un site Web, puis la lire à l'aide de la bibliothèque JavaScript Asciinema. Vous pouvez également consulter un asciicast en haute qualité après l'avoir téléchargé sur le site Web Asciinema.
Voici un échantillon de haute définition asciicast que vous pouvez regarder dans un navigateur Web en visitant le site officiel de l'Asciinema.
Pour plus d'informations sur l'utilitaire de ligne de commande Asciinema, exécutez les deux commandes suivantes:
$ man asciinema
$ asciinema -help
Vous pouvez également parcourir la documentation officielle en ligne à partir d'ici.
Incorporer Asciicast sur votre propre site Web ou application Web
Si vous souhaitez simplement partager une session capturée en ligne et que vous n'avez pas votre propre site Web ou votre application Web, la meilleure méthode consiste à le télécharger en ligne sur le site officiel d'Asciinema en utilisant les commandes expliquées ci-dessus, puis partagez le lien URL avec d'autres.
Pour intégrer un asciicast dans votre propre site Web ou application Web, vous devrez ajouter le script de lecteur Asciinema à votre fichier HTML en visitant la page où votre asciicast a été téléchargé en ligne. Par exemple, pour intégrer l'exemple Asciinema lié ci-dessus, cliquez sur le bouton «Partager» sur la page Web Asciicast pour obtenir le code intégré. Voici une capture d'écran montrant ceci:
Si un fichier HTML très simple contient le code suivant:
Ceci est un échantillon asciicast.
Vous verrez un lecteur embarqué dans votre page Web comme ceci:
Conclusion
Asciinema fournit une méthode pour capturer la sortie basée sur le texte en haute qualité. Contrairement à d'autres méthodes d'enregistrement et de capture vidéo, Aciinema enregistre les données brutes d'une session capturée dans un fichier texte et la lecture. Cela produit du texte net et clair comme si vous aviez exécuté les commandes et obtenu la sortie du texte sur votre propre matériel en temps réel.