© Christos Georghiou, Fotolia

Kommandozeilen-Kino

Shell-Kommandos mit Shelr aufzeichnen und teilen

15.04.2013
Das Ruby-Tool Shelr verwandelt die Kommandozeile in ein Kinoprogramm für Freunde der Shell.

Blockbuster entlocken Ihnen nur ein müdes Gähnen? Sie finden die Kommandozeile und deren Möglichkeiten weitaus spannender? Sie möchten mit einfachen Mitteln und ohne finanziellen Aufwand ihren eigenen Film erstellen, in dem weder Kinder, Katzen oder Hunde durch das Bild wackeln? Dann ist Shelr das Richtige für Sie.

Statt bei "Stirb langsam 5" und Konsorten dick, doof und depressiv zu werden oder andere Menschen damit zu langweilen, wie sich die Mieze sich von ihrem Fressnapf zum Schlafplatz schleppt, zeigen Sie mit dem kleinen Tool, wie Sie die Kommandozeile beherrschen, oder bilden sich mit den Shell-Casts anderer Nutzer weiter.

Das Programm Shelr [1] ist in Ruby implementiert und steht unter der GPLv3. Es ermöglicht, Aktionen auf der Kommandozeile mitzuschneiden und entweder selbst als Gedächtnisstütze in Form eines Videos zu archivieren oder mit anderen zu teilen und so in Tutorials oder Vorträge zu integrieren. Der Online-Dienst Shelr.tv [2] hostet die Terminal-Filmchen in bester Youtube-Manier (Abbildung 1). Anders und viel besser als bei Youtube erlaubt es der Dienst jedoch, Inhalte aus dem Stream per Copy & Paste zu entnehmen und gleich in der Konsole zu verwenden.

Abbildung 1: Shelr.tv erweist sich als Youtube für Konsolen-Freaks. Bei Bedarf übernehmen Sie Inhalte aus den Filmen einfach per Copy & Paste.

Das Programm selbst haben Sie im Nu installiert. Viele gängige Distributionen führen es bereits in ihren Repositories. Wo Shelr noch fehlt, wie etwa bei Debian "Squeeze", genügt es, Ruby und Rubygems zu installieren und anschließend Shelr und eventuelle Abhängigkeiten mit folgendem Befehl über das Ruby-Paketsystem Gems auf die Platte zu holen:

$ sudo gem install shelr

Shelr kommt als kleines Kommandozeilenprogramm mit wenigen Befehlen aus. Aus diesem Grund erlernen Sie das Bedienkonzept im Nu. Shelr greift auf script aus den Paketen util-linux oder util-linux-ng zurück und arbeitet so als Frontend, das die Terminal-Meisterwerke verwaltet und eine Verbindung zu Shelr.tv herstellt. Script und somit auch Shelr forken die Shell und senden alle Ausgaben in eine Typescript-Datei, die Sie bei Bedarf später wieder abspielen oder sogar ausdrucken.

Ausgaben aufzeichnen

Shelr residiert in der Vorgabe im Verzeichnis /var/lib/gems/Version/bin, das in der Regel nicht im Pfad liegt. Abhilfe schafft das folgende Kommando:

$ export PATH=/var/lib/gems/Version/bin:$PATH

Tragen Sie die Zeile in die Datei ~/.bashrc ein, klappt der Aufruf künftig ohne das Erweitern der Variable.

Um mit Shelr die Eingaben in einem Terminal aufzuzeichnen, genügt der Befehl shelr record. Das Programm fragt noch den Namen der Protokolldatei ab und legt dann los (Abbildung 2). Die Software protokolliert jegliche Eingabe und legt die entsprechenden Daten in einer Typescript-Datei unter ~/.local/share/shelr/<ID>/typescript ab. Haben sie alles im Kasten, beenden Sie das Aufzeichnen mit exit oder über [Strg]+[D].

Abbildung 2: Über das Kommando shelr record starten Sie das Aufzeichnen der Shell-Kommandos.

Der Befehl shelr play last spielt das Aufgenommene wieder ab. Fällt das Ergebnis so aus, dass Sie es anderen zumuten möchten, schieben Sie es mit dem Kommando shelr push last auf Shelr.tv. Das Programm fragt dabei eine aussagekräftige Beschreibung ab. Sofern beim Hochladen keine Fehler auftraten, zeigt die Software anschließend die URL des veröffentlichten Typescripts an.

Freilich müssen Sie die Videos nicht zwingend auf Shelr.tv veröffentlichen. Sie können Ihre Sammlung auch für sich behalten und lediglich mit Freunden und Bekannten teilen.

Benutzen Sie Shelr regelmäßig, dann sammeln sich mit der Zeit etliche Videos an, und es stellt sich der Wunsch ein, nicht immer nur das letzte Werk zu betrachten, sondern auch mal eines der früheren. Allerdings lässt sich aus den IDs nicht schließen, welche Inhalte sich in den zugehörigen Typescript-Dateien verbergen.

Hier kommt das Kommando shelr list ins Spiel, das neben der ID auch den Titel eines Shell-Videos auflistet. Die ID des gewünschten Titels kopieren Sie und nutzen sie anschließend im Befehl shelr play ID. Alternativ laden Sie die entsprechende Datei mit shelr push ID auf Shelr.tv (Abbildung 3).

Abbildung 3: IDs sind nichts weiter als Unix-Timestamps, die das Programm Shelr nutzt, um lokale Shell-Casts zu identifizieren.

Bis jetzt spielte sich alles lokal ab. Doch selbst fleißig Filmschaffende ergreift zwangsläufig früher oder später die Neugier auf die Werke anderer. Deren Videos schauen Sie sich am einfachsten direkt auf der Shelr.tv-Seite an. Stört der Browser oder fehlt eine grafische Umgebung, rufen Sie über das folgende Kommando den Film ab und starten die Wiedergabe auf der Konsole:

$ shelr play http://shelr.tv/records/ID.json

Das Push-Kommando ermöglicht es, Werke als anonymer Nutzer zu veröffentlichen. Möchten Sie mit Ihren Shell-Casts zu Ruhm gelangen, brauchen Sie einen API-Key. Den erhalten Sie auf unkomplizierte Weise, sofern Sie über ein Konto bei Github, Twitter, Google oder OpenID verfügen: Es genügt, sich über einen dieser Dienste auf Shelr.tv anzumelden (Abbildung 4). Anschließend übernehmen Sie den API-Key mit shelr setup Key. Ab nun tragen alle Videos Ihren Nickname.

Abbildung 4: Über einen API-Key posten Sie Ihre Videos mit einem von Ihnen gewählten Nickname.

Sollen die Shellcasts nicht an Shelr.tv gehen, gilt es lediglich im Setup zusätzlich eine API-URL anzugeben. Wer sich dagegen sträubt, seine Werke der breiten Masse zugänglich zu machen, der schränkt das Betrachten beim push mit Hilfe des Schalters --private ein.

In dem Fall benötigt der Betrachter neben einer öffentlichen ID auch einen Zugriffsschlüssel, um in den Genuss der Filme zu kommen (Abbildung 5). Hochgeladene Mitschnitte wandelt der Server in JSON-Objekte um. Wer muss oder möchte, erledigt diesen Schritt lokal mit dem Befehl dump.

Abbildung 5: Mit dem Schalter --privat hochgeladene Shellcasts sind nur Auserwählten zugänglich.

Backends, Sound und Dumps

Shelr ist unter Linux nicht auf das Hilfsprogramm Script als Backend beschränkt. Bei Bedarf wechseln Sie das Backend mit dem Kommando

$ shelr setup recorder backend ttyrec

Mac OS X bringt eine veraltete Version von Script mit, die nicht mit Shelr zusammenarbeitet. Hier stellt Ttyrec momentan die einzige Lösung dar.

Die Software zeichnet nicht nur die Ausgaben auf einem Terminal auf, sondern bietet die Möglichkeit, die Ereignisse akustisch zu untermalen. Hierzu geben Sie dem Befehl record den Schalter --sound mit. Das führt dazu, dass Shelr parallel zum Cast auch eine Audio-Datei im Format OGG erstellt.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Related content

Kommentare

Infos zur Publikation

title_2014_08

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...
o2 surfstick software für ubuntu?
daniel soltek, 15.07.2014 18:27, 1 Antworten
hallo zusammen, habe mir einen o2 surfstick huawei bestellt und gerade festgestellt, das der nic...
Öhm - wozu Benutzername, wenn man dann hier mit Klarnamen angezeigt wird?
Thomas Kallay, 03.07.2014 20:30, 1 Antworten
Hallo Team von Linux-Community, kleine Zwischenfrage: warum muß man beim Registrieren einen Us...
openSUSE 13.1 - Login-Problem wg. Fehler im Intel-Grafiktreiber?
Thomas Kallay, 03.07.2014 20:26, 8 Antworten
Hallo Linux-Community, habe hier ein sogenanntes Hybrid-Notebook laufen, mit einer Intel-HD460...
Fernwartung für Linux?
Alfred Böllmann, 20.06.2014 15:30, 7 Antworten
Hi liebe Linux-Freunde, bin beim klassischen Probleme googeln auf www.expertiger.de gestoßen, ei...