Der Autor wählte die Electronic Frontier Foundation, um eine Spende im Rahmen des Programms Write for DOnations zu erhalten.
Terminalizer ist eine Terminal-Rekorderanwendung, mit der Sie Ihre Terminalsitzung in Echtzeit aufnehmen und dann zu einem späteren Zeitpunkt wiedergeben können. Sie funktioniert genauso wie ein Desktop-Bildschirmrekorder, läuft aber stattdessen in Ihrem Terminal.
Die Aufzeichnung Ihrer Terminalsitzung ist nützlich, wenn Sie eine bestimmte Aktivität erneut überprüfen oder einen besonders kniffligen Fehler beheben möchten. Die mit Terminalizer erstellten Aufnahmen können auch als animierte GIFs exportiert werden, was Ihnen eine gute Möglichkeit bietet, diese online zu teilen oder dem Marketingmaterial Ihrer Software hinzuzufügen.
In diesem Tutorial installieren und verwenden Sie Terminalizer zur Aufnahme und Wiedergabe von Terminalsitzungen, zur benutzerdefinierten Anpassung Ihrer Aufnahmen und zum anschließenden Exportieren, um die Aufnahmen online zu teilen.
Um diesem Tutorial zu folgen, benötigen Sie:
Einen Ubuntu 18.04-Server, der gemäß der Ersteinrichtung eines Servers unter Ubuntu 18.04 eingerichtet wurde, einschließlich eines sudo non-root users.
Node.js und npm, die Sie installieren, indem Sie dem Abschnitt Installation der Distro-Stable Version für Ubuntu in Installation von Node.js unter Ubuntu 18.04 folgen.
Wenn Sie Ihre Aufnahmen online teilen möchten, benötigen Sie außerdem:
Sobald Sie diese zur Verfügung haben, melden Sie sich zunächst als Nicht-Root-Benutzer auf Ihrem Server an.
In diesem Schritt laden Sie Terminalizer herunter und installieren es auf Ihrem System. Terminalizer ist mit Node.js geschrieben und kann mit dem npm
-Paketmanger installiert werden.
Um Terminalizer global auf Ihrem System zu installieren, führen Sie den folgenden Befehl aus:
- sudo npm install --global --allow-root --unsafe-perm=true terminalizer
Terminalizer verwendet das Electron-Anwendungsframework, um aufgenommene Terminalsitzungen in GIF-Format zu exportieren. Für die globale Installation von Electron auf Ihrem System ist das Befehlsargument --unsafe-perms=true
erforderlich.
Sobald Terminalizer installiert ist, sehen Sie eine Ausgabe ähnlich wie die folgende:
Output. . .
/usr/local/lib
└── terminalizer@0.7.1
Als Nächstes überprüfen Sie die Installation von Terminalizer, indem Sie Folgendes ausführen:
- terminalizer --version
Sie erhalten eine Ausgabe, die der Folgenden ähnelt:
Output0.7.1
Erstellen Sie zum Schluss eine standardmäßige Terminalizer-Konfigurationsdatei, die Sie zur erweiterten Anpassung des Terminalizers nutzen können (Einzelheiten hierzu in Schritt 4):
- terminalizer init
Sie erhalten eine Ausgabe, die der Folgenden ähnelt:
OutputThe global config directory is created at
/home/user/.terminalizer
Nachdem Sie Terminalizer nun installiert haben, können Sie Ihre erste Terminalaufnahme erstellen.
In diesem Schritt nehmen Sie eine Terminalsitzung auf und geben diese wieder.
Zuerst erstellen Sie eine neue Terminalizer-Aufnahme mit einem Namen Ihrer Wahl:
- terminalizer record your-recording
Die darauf folgende Ausgabe zeigt an, dass die Aufnahme gestartet wurde:
OutputThe recording session has started
Press Ctrl+D to exit and save the recording
Sie können nun in Ihrem Terminal alles ausführen, was Sie möchten. Jede Tasteneingabe und jeder Befehl wird von Terminalizer in Echtzeit aufgezeichnet.
Beispiel:
- pwd
- date
- whoami
- echo "Hello, world!"
Wenn Sie die Aufnahme stoppen möchten, drücken Sie STRG+D
. Nun speichert Terminalizer die Aufnahme in die angegebene Datei im Format YAML, z. B. your-recording.yml
.
OutputSuccessfully Recorded
The recording data is saved into the file:
/home/user/your-recording.yml
Sie können von Terminalizer aufgefordert werden, Ihre Aufnahme online zu teilen. Drücken Sie einfach STRG+C
, um dies vorerst abzubrechen, da Sie die Terminalaufnahme zunächst lokal wiedergeben können.
Als Nächstes geben Sie die aufgenommene Terminalsitzung mit dem folgenden Befehl wieder:
- terminalizer play your-recording
Dadurch wird die aufgenommene Sitzung in Echtzeit in Ihrem Terminal wiedergegeben:
Outputuser@droplet:~$ pwd
/home/user
user@droplet:~$ date
Sun Mar 8 14:55:36 UTC 2020
user@droplet:~$ whoami
user
user@droplet:~$ echo "Hello, world!"
Hello, world!
user@droplet:~$ logout
Sie können die Wiedergabegeschwindigkeit Ihrer Aufnahme auch mit der Option --speed-factor
anpassen.
Folgendes z. B. gibt Ihre Aufnahme halb so schnell wieder (halbe Geschwindigkeit):
- terminalizer play your-recording --speed-factor 2
Alternativ können Sie Ihre Aufnahme doppelt so schnell (doppelte Geschwindigkeit) wiedergeben:
- terminalizer play your-recording --speed-factor 0.5
Sie haben eine Terminalsitzung aufgenommen und wiedergegeben. Als Nächstes können Sie eine aufgenommene Terminalsitzung online teilen.
In diesem Schritt teilen Sie Ihre aufgenommene Terminalsitzung online auf der Webseite Terminalizer Explore.
Wählen Sie zuerst die aufgenommene Sitzung aus, die Sie teilen möchten:
- terminalizer share your-recording
Sie werden dann aufgefordert, einige grundlegende Metadaten über Ihre Aufnahme bereitzustellen, wie z. B. den Titel und die Beschreibung:
OutputPlease enter some details about your recording
? Title Title of Your Recording
? Description Description of Your Recording
? Tags such as git,bash,game Comma-separated Tags for Your Recording
Warnung: Terminalizer-Aufnahmen werden standardmäßig öffentlich gemeinsam genutzt. Achten Sie also darauf, dass es in Ihrer Terminalaufnahme keine persönlichen Daten gibt, die Sie nicht teilen möchten.
Wenn Sie zum ersten Mal eine aufgenommene Sitzung mit Terminalizer teilen, müssen Sie Ihren Terminalizer-Account verlinken. Terminalizer wird, falls erforderlich, einen Verifizierungslink anzeigen:
OutputOpen the following link in your browser and login into your account
https://terminalizer.com/token?token=your-token
When you do it, press any key to continue
Warnung: Stellen Sie sicher, dass Sie Ihr Terminalizer-Token privat halten, da jeder, der es besitzt, auf Ihren Terminalizer-Account zugreifen kann.
Sobald Sie den Link in Ihrem Webbrowser geöffnet und sich in Ihren Terminalizer-Account eingeloggt haben, drücken Sie eine beliebige Taste, um fortzufahren.
Terminalizer lädt Ihre Aufnahme nun hoch und stellt Ihnen den Link zum Ansehen zur Verfügung:
OutputSuccessfully Uploaded
The recording is available on the link:
https://terminalizer.com/view/your-recording-id
Durch das Öffnen des Links in einem Desktop-Webbrowser können Sie Ihre geteilte Aufnahme ansehen:
Sie haben eine aufgenommene Terminalsitzung auf der Terminalizer-Website geteilt und in Ihrem Webbrowser angesehen.
Nachdem Sie sich nun mit Terminalizer vertraut gemacht haben, können Sie beginnen, einige der erweiterten Anpassungsoptionen zu testen. Sie haben z. B. die Möglichkeit, die Farben und den Stil des Displays anzupassen.
Jede Aufnahme erhält die Standardkonfiguration aus der globalen Terminalizer-Konfigurationsdatei, die sich unter ~/.terminalizer/config.yml
befindet. Das bedeutet, dass Sie die Konfiguration für einzelne Aufnahmen direkt bearbeiten können, indem Sie die Aufnahmedatei bearbeiten (z. B. your-recording.yml
). Alternativ können Sie die globale Konfiguration bearbeiten, was sich auf alle neuen Aufnahmen auswirkt.
In diesem Beispiel bearbeiten Sie die globale Konfigurationsdatei, aber die gleiche Anleitung gilt auch für Konfigurationsdateien individueller Aufnahmen.
Öffnen Sie zuerst die globale Terminalizer-Konfiguration in Ihrem Texteditor, z. B. nano
:
- nano ~/.terminalizer/config.yml
Jede der verfügbaren Konfigurationsoptionen innerhalb der Datei ist mit einem erklärenden Kommentar versehen.
Es gibt verschiedene gängige Konfigurationsoptionen, die Sie Ihren Wünschen anpassen können:
cols
: Legen Sie die genaue Anzahl der für Ihre Aufnahme verwendeten Terminalspalten fest.rows
: Legen Sie die genaue Anzahl der für Ihre Aufnahme verwendeten Terminalreihen fest.frameDelay
: Heben Sie die Verzögerung zwischen jeder Tastatureingabe während der Wiedergabe auf.maxIdleTime
: Geben Sie eine maximale Zeit zwischen den Tastatureingaben während der Wiedergabe an.cursorStyle
: Legen Sie den standardmäßigen Cursor-Stil des Terminals auf block
, bar
oder underline
fest.fontFamily
: Legen Sie eine Liste der bevorzugten Wiedergabeschriftarten in der bevorzugten Reihenfolge fest.theme
: Stellen Sie das Farbschema der Wiedergabe ein, z. B. für ein Schwarz-auf-Weiß-Terminal, etc.Beispielsweise können Sie ein Weiß-auf-Schwarz-Terminaldisplay erhalten, indem Sie die folgenden Optionen konfigurieren:
. . .
theme:
background: "white"
foreground: "black"
. . .
Sie erhalten ein Ergebnis, das dem Folgenden ähnelt:
Sie können den Cursor-Stil anpassen, um die Aufnahme leichter verständlich zu machen, z. B. indem Sie den standardmäßigen Cursor im Block-Stil mit einem unterstrichenen tauschen:
. . .
cursorStyle: underline
. . .
Sie erhalten ein Ergebnis, das dem Folgenden ähnelt:
Sobald Sie alle gewünschten Änderungen vorgenommen haben, speichern Sie die Datei und gehen zu Ihrem Terminal zurück.
Wenn Sie die globale Terminalizer-Konfiguration bearbeitet haben, gelten diese Einstellungen für alle neuen Aufnahmen, die Sie zukünftig erstellen. Wenn Sie eine individuelle Aufnahmekonfiguration bearbeiten, wendet Terminalizer die Änderungen sofort auf die jeweilige Aufnahme an.
Beachten Sie, dass der benutzerdefinierte Wiedergabestil nur für geteilte Aufnahmesitzungen gilt. Die direkte Wiedergabe in Ihrem Terminal verwendet immer Ihre standarmäßigen Terminalstile und Farbschemen.
In diesem letzten Schritt haben Sie einige der erweiterten Konfigurationsoptionen von Terminalizer getestet.
In diesem Artikel haben Sie Terminalizer zum Aufnehmen und Teilen einer Terminalsitzung verwendet. Sie verfügen nun über das erforderliche Wissen, um aufgenommene Demos Ihrer Software zu erstellen, die Sie für Marketingmaterial verwenden können, oder um Befehlszeilenkniffe mit Ihren Freunden zu teilen.
Wenn Sie Terminalizer-Aufnahmen in GIF-Format rendern und exportieren möchten, können Sie Terminalizer auf einem Rechner mit einer grafischen Benutzeroberfläche/Desktop installieren und die integrierten Rendering-Funktionen verwenden:
Sie können auch die Terminalizer-Website besuchen, um von anderen Benutzern aufgenommene, geteilte Terminalsitzungen zu sehen:
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!