Kommandozeile, mein Schatzkästchen

Gastbeitrag von akli

Geht es dir manchmal auch so? Du möchtest jemanden mit einer Kleinigkeit Freude bereiten, aber nach kurzer Zeit denkst du: »Das kostet mich mindestens einen Abend am PC«.

Projekt Videostrams zusammenfügen

Zu Silvester bot eine örtliche Tageszeitung auf seiner Webseite den Videoclip eines Feuerwerkes an. Browser öffnen, anschauen – Klasse, das wirkt auf dem riesigen Fernseher meines Schwagers bestimmt sehr attraktiv. Nun sollte der Clip auf einen USB-Stick, denn ich wollte die etwa 160 MB nicht wieder und wieder für jedes Mal anschauen herunterladen.

Mit Videobearbeitung hatte ich mich zuvor noch nie beschäftigt. Meine Multimediaerfahrungen beschränken sich lediglich auf einige geschnittene und mit Überblendung zusammengefügte Audiofiles. Trotzdem, ran an die Arbeit und im Anwendungsmenü die Multimediaprogramme gescheckt. Dieses könnte ich verwenden, ein anderes eventuell auch noch.

Als Erstes die Dateien aus dem Browsercache in einen neuen Ordner kopiert. Genau jetzt bekam ich Zweifel ob meines Unterfangens, denn es waren genau zweiundfünfzig Dateien vom Typ MPEG-2-Transportstrom mit Dateinamen des folgenden Musters:

E1F74F024C33E470976E8550404778966BC69B6B
ACA130C91D8B62949CCFEEF6FD3B7FB9566A7623
25A6CA4822606A82C639F5C88272B0A513C8B9E3
6BC3F38593352E3446FA0233E7C36F92F3CEB189
DC1C483767775FE1711A607E2363206E47CB83FF


52 Dateien, in der Summe fast 160 MB, und das alles in einem für mich neuen Programm zusammenfügen? Mich erwarteten einige Stunden Arbeit. Oder vielleicht doch nicht?

Cat und Co.

Die erste Idee, alle Dateien des Ordners mit dem Mediaplayer abzuspielen, erwies sich als nicht sinnvoll, denn jede neue Datei produzierte einen Aussetzer in der Wiedergabe.Dann fiel mir cat ein, mit dem ich schon öfter einige PDF-Textdokumente in eine einzige Datei packte. Ein Test musste zeigen, ob dies auch mit MPEG möglich wäre. Sofort ein Terminal geöffnet und in den Ordner mit den aus dem Browsercache separierten MPEG-Dateien gewechselt.

cat ./* > ./Film.peg


Nach nicht einmal zwei Sekunden kehrte der Prompt ohne Fehlermeldung zurück. Mein Grinsen im Gesicht hättest du sehen sollen. Doch der Augenblick der Wahrheit stand erst noch bevor. Ist die 158 MB große Film.mpg auch abspielbar? Ja, ohne zu mucken spielt der Mediaplayer die Datei ab. Nur hatte cat sie nicht so zusammengesetzt wie ich das erwartete. Die Reihenfolge der zweiundfünfzig Filmschnipsel richtete sich nach dem ursprünglichen Dateinamen. Es musste noch ein Kommando für die korrekte Reihenfolge her. Mir kam ls in den Sinn. Schnell die man-Page konsultiert, und siehe da, die Option t bzw. tr erzeugt eine Ausgabe in der Reihenfolge des Zeitstempels. Nun den erweiterten Befehl abgesetzt.

cat $(ls -tr *) > ./Film.mpg

Das Ergebnis war genau wie gewünscht. Ich war total begeistert, mein Schatzkästchen hat sich wieder einmal hervorragend bewährt und mir womöglich stundenlange Arbeit mit einem grafischen Programm erspart. Den USB-Stick mit der Datei nahm ich an Silvester zu meinem Schwager mit, wo wir dieses Mal ein virtuelles Feuerwerk betrachteten.

…könnte ja gut werden


Auch nach über zwanzig Jahren mit Linux überrascht mich die Kommandozeile immer wieder einmal. Deshalb nenne ich sie auch mein Schatzkästchen. Vergegenwärtige dir, dass jeder Klick auf einen Button der grafischen Oberfläche letztendlich einen textbasierten Befehl absetzt, also warum nicht gleich die Kommandozeile ausprobieren. Frei nach dem Motto »Einfach mal machen, könnte ja gut werden«.

Teilt den Beitrag, falls ihr mögt

34 Kommentare

  1. “Warum in die Ferne schweifen? Sieh, das Gute liegt so nah!”

    Vielen Dank für diesen Erfahrungsbericht. Auch mich begeistert und überrascht die Kommandozeile immer wieder. Gerade bei Multimedia und Grafiken ist man ja schnell bei Programmen mit GUI. Die Kommandozeile fällt mir dann auch erst beim zweiten Anlauf oder erst im Nachhinein ein – obwohl ich primär mit Text arbeite. Daher fielen mir dann auch noch ein paar Rechtschreibfehler auf:

    Zu Silvester bot eine örtliche Tageszeitung auf ihrer Webseite …

    … ran an die Arbeit und im Anwendungsmenü die Multimediaprogramme ge[ s ]checkt.

    Nur hatte cat sie nicht so zusammengesetzt , wie ich das erwartete.
    oder:
    Nur hatte cat sie nicht so zusammengesetzt wie [ich das] erwartet[e].

    Schnell die man-Page konsultiert [ , ] und , siehe da, die Option…

    0
  2. Wie bitte???
    Die Kommandozeile sei verschmäht?

    Wer sagt das denn?
    Kein Admin der zig Millionen linux Server weltweit nutzt zur Administration eine gui.

    Mag sein, dass Anfänger dies tun. Somit ist auch klar, wer die Zielgruppe dieses Posts ist. Aber die Überschrift ist völliger blödsinn und ist nicht korrekt.

    1
    1. Das lese ich jeden Tag auf den verschiedensten Plattformen. Und was an der Überschrift »völliger Blödsinn« ist, kann ich nicht ganz nachvollziehen. Und Administratoren sind in der Gesamtzahl von Linux-Anwendern eine winzige Minderheit. Und es sind bei Weitem nicht nur Anfänger, die CLI ablehnen. Ich komme viel rum, du kannst es mir glauben.

      0
      1. Sorry…. Aber das darf doch nicht wahr sein. Die einzigen, die eine cli ablehnen sind Windows und macos Nutzer.
        Wer linux Server betreut muss- nicht kann- muss die Cli beherrschen.
        Administratoren machen in der linux Gemeinde 95% der Nutzer aus. Ich bin einer davon. Seit 35 Jahren und mit diversen MS Zerts gesegnet. Wenn man mal die ganze Lizenz Sch….. mit der Sicherheit und den Möglichkeiten von linux vergleicht und Begriffen hat, kann man guten Gewissens nichts anderes mehr wollen und linux ist nicht linux ohne Cli.
        Lang lebe linux!

        1
        1. Administratoren machen in der linux Gemeinde 95% der Nutzer aus.

          Nicht mal 5 %. Vermutlich nicht mal 1%.

          Um das mal klarzustellen: Ein Admin ist der Definition nach jemand, der mit der Verwaltung von Servern sein Geld verdient.

          1
  3. Wer die CLI nicht nutzt der hat die Zukunft schon verpasst würde ich behaupten. Das solche Artikel überhaupt notwendig sind, scheinbar sind sie das.

    Danke für den Artikel, das Offensichtliche und Selbstverständliche muß auch immer wieder mal gesagt und geschrieben werden. Damit alle mal auf dem gleichen Stand sind.

    Für mich geht ohne Terminal gar NICHTS! Das war bei Windows so damals mit (Windows NT/2000) und das ist bei den Linuxdistributionen auch geblieben.

    Es gibt Betriebssysteme da ist die GUI nur ein müder Abklatsch dessen was in der CLI so geht. Die GUI hängt da nur hinterher.

    Ich möchte hier aber nicht damit suggerieren dass GUI’s überflüssig sind, für manche Anwendung da geht auch nichts über die GUI. Nur dass das klargestellt ist.

    4
  4. Ich musste vor kurzem viele PDF Dateien, die in mehreren Unterverzeichnissen verteilt waren, nach einem Begriff durchsuchen.
    Jede PDF einzeln öffnen war mir zu umständlich.
    Also habe ich das Kommandline Tool pdfgrep aus dem Repository installiert und in einem Rutsch rekursiv alle PDFs durchsucht und schon hatte ich das Ergebnis.

    Klar, das war jetzt kein komplexes Bashskript, zeigt aber, dass man recht schnell eine CLI Lösung mit passendem Tool finden kann.

    2
  5. Einen ähnlichen Fall hatte ich kürzlich auch. Ich hatte einige Dutzend Screenshots in einem Ordner, alle ca. im DIN-A4 Format. Darauf wollte ich ein PDF erzeugen. In meinem Kopf hab ich mich schon mit LibreOffice Draw für die nächste Zeit rumbasteln sehen. Dabei ist mir spontan der Befehl eingefallen:

    convert *.png output.pdf
    

    Uuuuuunnd… das Ergebnis war perfekt. So schnell hatte ich das Ergebnis zu Beginn nicht erwartet.
    (*.png hat gereicht, da die Bilder glücklicherweise schon mit 1.png, 2.png usw. benannt wurden).

    1
    1. Danke, toller Hinweis. Der Befehl war mir bisher nicht geläufig. Ich wollte das gerade anhand ein paar JPGs ausprobieren, und erhielt folgenden Error:

      convert-im6.q16: attempt to perform an operation not allowed by the security policy `PDF’ @ error/constitute.c/IsCoderAuthorized/421

      Woran könnte das liegen. Danke und Gruss.

      0
  6. Sehr nettes Beispiel. Leider habe ich nach 2 Jahren Linux (Manjaro) immer noch keine Ahnung von der Kommandozeile… Wenn etwas nicht läuft finde ich Tutorials, die ich nicht verstehe…
    Gibt es irgendwo eine empfehlenswerte Einführung ins Terminal?

    0
    1. Ja, wenn du des Englischen mächtig bist, dann empfehle ich dir “The Linux Command Line” von William Shotts. Gibt es auf Amazon. Man findet es auch gratis im Internet als PDF. Auch ganz nett, besonders für neue Linuxeros ist “Das Linux Terminal” von Josef Moser, auch bei Amazon zu finden. Das ist auf Deutsch.

      4
  7. Kommandozeile ist letztlich nichts anderes als (einfaches) Programmieren, also dass der Rechenknecht genau das macht was er gut kann und wozu ich zu faul bin. Das würde ja auch niemand nur mit Mausklicks versuchen. Und dafür gilt eben die //Geeks and Repetitive Tasks//-Regel.

    0
  8. ja… nettes Beispiel und sehe ich genauso! GUI-Programme sind für simple Tasks auch mir komplexer anzuwenden als die GNU Klassiker (:

    Aber: Wenn ich – auch ITlern – sage wie ich das Terminal liebe, ernte ich fast immer Stirnrunzeln… ((;

    1
  9. Warum war die Kommandozeile überhaupt nötig? Wäre ein Downloader (separate Software oder Browser-Erweiterung), der den Film direkt von der Website auf die Festplatte schaufelt, nicht einfacher gewesen?

    1
    1. Die Kommandozeile war nicht nötig, sie hat sich angeboten weil ich mit den Werkzeugen, die Linux von Hause aus mitliefert, die Aufgabe erfüllen konnte. Und nicht nur die, sondern viele weitere.

      Es gibt sicher hunderte Programme, Erweiterungen und Gadgets, und alle haben für irgend jemanden ihre Berchtigung. Auch gibt es unter den Lesern hier bestimmt Multimediaprofis, die mir erklären könnten, dass ich mit jenem graphischen Progrann im Nu die 52 Schnipsel hätte zusammenkleben können. Aber die waren zu dem Zeitpunkt nicht da – mein “Schatzkästchen” schon.

      Ich finde es einfach faszinierend die Leistungsfähigkeit der Kommandozeile zu erleben. Darum ging es in dem Artikel.

      13
      1. Ich finde es einfach faszinierend die Leistungsfähigkeit der Kommandozeile zu erleben. Darum ging es in dem Artikel.

        Eben, das kommt klar ‘rüber. Ein Beispiel.

        Das würde so freilich woanders nicht funktionieren, die Videoschnipsel würdest Du nicht im Cache sehen, da absichtlich als gelöscht markiert.

        0
    2. Eine Browsererweiterung verschlechtert meist den Browser Fingerabdruck im negativen Sinne.
      Man wird leichter aufspürbar.

      Gegen einen separaten Downloader, sofern er gut gepflegt wird und sicher ist, spricht allerdings nichts.

      0
  10. Als Anfänger arbeite ich mich auch gerne an das Terminal/Konsole. Grade Updates laufen bei mir 100% fehlerfrei. Oder installiere Pakete/Anwendungen damit.

    Mein Produktivsystem ist MX Linux, wobei mich openSuse Tumbleweed total fesselt.
    KDE Plasma 5.23.5 mit wayland läuft echt prima.

    0

Kommentar hinterlassen