Aus Linux-Magazin 09/2022

CLI-Werkzeuge im Kurztest

CLI-Datenübertragung mit Aim 1.5.0, Videos und Playlists herunterladen mit Lux 0.15.0, selbst signierte SSL-Zertifikate erstellen mit Mkcert 1.4.4, HTTP-Performance testen mit P0d 0.3.9, auf der Konsole rechnen mit Plus 1.2.2, Aufgaben verwalten mit Todo (main).

Aim 1.5.0

Datenübertragung auf der Konsole

Quelle: https://github.com/mihaigalos/aim

Lizenz: MIT

Alternativen: Rget, Curl

Für jedes Netzwerkprotokoll gibt es unter Linux mindestens ein spezielles Tool zur Datenübertragung. Das in Rust geschriebene Aim will den Datentransfer vereinfachen und mehrere Protokolle in einem Client vereinen. Derzeit unterstützt es HTTP(S), FTP und SSH. Binaries für Linux und MacOS finden Sie auf Github. Beim Aufruf geben Sie die URL der zu übertragenden Datei als Parameter an, als Zielort dient das aktuelle Verzeichnis (».«). Geben Sie für Archivdateien »+« als Ziel an, ermittelt Aim direkt die verwendete Kompressionsmethode und entpackt den Inhalt im aktuellen Verzeichnis. Zum Hochladen einer Datei geben Sie neben dem Dateinamen die Zieladresse an. Erfordert der Zugriff auf das entfernte System eine Authentifizierung, stehen Benutzername und Passwort direkt in der URL. Optional prüft Aim die Übertragung mit einem SHA-256-Hash-Wert. Übertragungen via HTTP(S) und FTP lassen sich nach einem Abbruch wiederaufnehmen, für SSH gibt es das Feature noch nicht. Daneben besteht die Möglichkeit, ein lokales Verzeichnis ad hoc für den Online-Zugriff bereitzustellen. Dazu rufen Sie Aim im gewünschten Verzeichnis ohne weitere Parameter auf. Es wartet nun auf der ersten Schnittstelle an Port 8080 auf eingehende Verbindungen. Interface und Port lassen sich nicht ändern, eine Verschlüsselung fehlt ebenfalls.

  Aim befindet sich derzeit in aktiver Entwicklung – es lohnt sich, das Tool im Auge zu behalten.

Lux 0.15.0

Videos und Playlists herunterladen

Quelle: https://github.com/iawia002/lux

Lizenz: MIT

Alternativen: Youtube-dl

Lux bringt Filme und Playlists aus Portalen wie Youtube, Tiktok, Reddit, Facebook und Instagram auf die eigene Festplatte. Das Tool verwendet Ffmpeg, um im Hintergrund die geladenen Häppchen wieder zusammenzusetzen. Auf Github finden sich neben Binaries für alle gängigen Betriebssysteme und Plattformen einige Anwendungsbeispiele, »-h« ruft eine Online-Hilfe auf. Beim Aufruf übergeben Sie Lux die URL des Videos, das Sie herunterladen möchten. Die Angabe mehrerer URLs ist möglich, auch in Form einer Textdatei mit mehreren Adressen, deren Namen sie hinter »-F« angeben. Soll Lux eine ganze Playlist übertragen, stellen Sie zusätzlich den Parameter »-p« vor die URL. Schränken Sie die Auswahl nicht mit »-start« und »-end« ein, lädt es die ganze Liste herunter. Bricht der Transfer ab, dann sichert Lux den aktuellen Stand in der Datei ».download«. Bei einem späteren Neustart mit denselben Parametern setzt das Tool die Übertragung fort. Lux überträgt die Dateien in Blöcken von 1 MByte, sofern Sie nicht hinter »–cs« eine eigene Blockgröße definieren. Der Downloader zieht immer das erste verfügbare Format. Gibt es unter der Adresse mehrere Streams, sucht »-f« ein bestimmtes Format aus. Eine Übersicht aller Formate und Metadaten einer URL erhalten Sie mit »-i«.

  Lux lädt zuverlässig Videos von verschiedenen Plattformen herunter. Ein Handbuch fehlt zwar, die Beispiele auf Github bringen aber Licht in die Funktionsweise.

Mkcert 1.4.4

Selbst signierte SSL-Zertifikate erstellen

Quelle: https://github.com/FiloSottile/mkcert

Lizenz: BSD

Alternativen: OpenSSL

Zum Verschlüsseln der Kommunikation in LANs dient meist das etwas sperrige OpenSSL. Das in Go implementierte Mkcert will das Prozedere erleichtern. Ältere Versionen finden sich in den Repos mancher Distributionen, das aktuelle Release samt Beschreibung gibt es als fertiges Paket für Linux, Windows und MacOS auf Github. Mkcert erfordert keine Konfiguration. Um ein Zertifikat und einen Schlüssel für eine Domain oder IP zu erstellen, geben Sie diese beim Aufruf als Parameter an. Mkcert erzeugt ein 2048-Bit-Zertifikat samt Schlüssel, das 27 Monate lang gilt. Mit »-pkcs12« erhalten Sie zusätzlich eine PKCS#12-Datei für das Speichern von Verschlüsselungsobjekten. »-csr« erstellt eine CSR-Datei, »-ecdsa« ein ECDSA-Zertifikat. Mkcert legt alle Dateien im aktuellen Verzeichnis ab. Andere Speicherorte definieren Sie mit »-cert-file«, »-key-file« und »-p12-file«. Geben Sie statt einer Domain eine E-Mail-Adresse an, erstellt Mkcert automatisch ein S/MIME-Zertifikat, wobei es enthaltene Standardwerte mit Platzhaltern füllt. So heißt der Aussteller immer »mkcert development«, während sich »OrganisationUnit« und »CommonName« aus Benutzer- und Host-Namen zusammensetzen. Da Browser und andere Webclients solche selbst signierten Zertifikate nicht als vertrauenswürdig einstufen, können Sie über »-install« ihre eigene CA zum Trust-Store des lokalen Systems hinzufügen; »-uninstall« entfernt sie wieder.

  Mkcert erleichtert das Erstellen selbst signierter Zertifikate deutlich.

P0d 0.3.9

HTTP-Performance testen

Quelle: https://github.com/simonmittag/p0d

Lizenz: Apache 2.0

Alternativen: Speedtest, Iperf

Das in Go geschriebene P0d ermittelt den Datendurchsatz zwischen Clients und Webservern. Pakete für Linux und MacOS gibt es im Github-Repository. Um nur die Geschwindigkeit zu testen, geben Sie beim Aufruf eine URL an. In der Voreinstellung testet das Tool 10 Sekunden lang den Lese- und Schreibdurchsatz. Dabei versucht es, den verwendeten HTTP-Server und die generelle Geschwindigkeit der Internet-Verbindung zu ermitteln. Außerdem prüft P0d die Größe des lokal verfügbaren Arbeitsspeichers und den Ulimit-Wert für die Anzahl geöffneter Dateien. Diverse Kommandozeilenparameter beeinflussen das Verhalten. So unterbinden Sie mit »-s« die Messung der Internet-Anbindung. Die Länge des Prüflaufs legen Sie über »-d« fest. Soll P0d mehr als eine TCP-Verbindung aufbauen, geben Sie die Anzahl hinter »-c« an. Seine Ergebnisse schreibt das Tool übersichtlich in die Konsole oder speichert sie mit »-O« in einer JSON-Datei. Statt Aufrufparametern akzeptiert P0d auch eine Konfiguration im YAML-Format. Eine solche Einrichtungsdatei bietet wesentlich mehr Möglichkeiten. Hier notieren Sie beispielsweise die Bemessungsgröße in Mega- oder Mebibyte. Hinter »exec.dialTimeoutSeconds« legen Sie fest, nach wie vielen Sekunden P0d einen Verbindungsversuch abbricht. Die Angabe der Request-Art gelingt mit »req.method«, die erwartete Rückgabe legt »res.code« fest. Eine Beispielkonfiguration gibt es auf Github.

  Suchen Sie ein Benchmark-Tool, das auch HTTP/2 unterstützt, liegen Sie mit P0d richtig.

Plus 1.2.2

Auf der Konsole rechnen

Quelle: https://github.com/NalinPlad/plus

Lizenz: MIT

Alternativen: Bc, Calc

Wer im Terminal rechnen will, landet in der Regel bei GNU Bc oder einer Skriptsprache wie Python. Das Rust-basierte Plus bietet eine weitere Möglichkeit. Im Gegensatz zu Bc, das nur ganzzahlige Werte liefert, kommt Plus auch mit positiven reellen Zahlen zurecht. So liefert es nach Eingabe von »1/4« nicht 0, sondern 0.25 zurück. Plus fehlt noch in den Distributions-Repos, Sie bauen das Tool aus den Quellen selbst. Die Funktionsweise von Plus ähnelt der von Bc. Nach dem Aufruf landen Sie in einem interaktiven Modus und tippen Ihre Berechnungen ein. Neben den Grundrechenarten stehen trigonometrische Funktionen wie Sinus, Kosinus, Tangens sowie deren Kehrwerte zur Verfügung. Plus unterstützt zudem Wurzelrechnung, Exponentialfunktionen und verschiedene Logarithmen. Wichtige Konstanten wie Pi oder e sind bereits definiert, für komplexere Berechnungen nutzen Sie Variablen. Plus legt in der aktuellen Sitzung eine Befehlshistorie an, sodass Sie schnell auf frühere Berechnungen zurückgreifen, sie anpassen oder erneut ausführen können. Beim Beenden archiviert Plus die History jedoch nicht. In Sachen Dokumentation gibt sich das Tool sparsam, lediglich auf Github finden sich einige Beispiele. Der Entwickler scheint anzunehmen, sein Tool sei selbsterklärend.

  Das Rechnen mit negativen Werten beherrscht Plus noch nicht. Diese Fähigkeit steht ebenso wie das Verarbeiten von Feldern und eine dauerhafte Befehlshistorie für kommende Versionen auf dem Plan.

Todo (main)

Aufgaben verwalten

Quelle: https://github.com/Iyamnabeen/todo

Lizenz: Public Domain

Alternativen: Task, Taskwarrior

Ob als grafische Anwendung oder auf der Shell: An Applikationen für To-do-Listen herrscht unter Linux kein Mangel. In diese Riege gehört auch das Bash-Skript Todo, das so neu ist, dass es noch keine Versionsnummer hat. Zum Ausprobieren klonen Sie es am besten aus dem Github-Repo, da es noch kein Release gibt. Nach dem Aufruf von »todo« ohne weitere Parameter entscheiden Sie sich in einem Auswahlmenü, ob Sie einen neuen Eintrag anlegen, einen bestehenden betrachten oder das Tool beenden möchten. Zum Erstellen einer neuen Aufgabe geben Sie ein Datum im vorgegebenen Format ein, danach die Uhrzeit und einen Titel. Todo öffnet nun den Editor Vim und trägt alle Daten ein; Sie können weitere Informationen im Editor ergänzen. Nach dem Speichern und Beenden landen die Tasks als Textdateien im Verzeichnis »$HOME/.local/todo/«. Alle Einträge mit demselben Datum speichert Todo in einer Datei. Um Aufgaben zu betrachten oder zu ändern, rufen Sie erneut »todo« auf und wählen im Menü View aus. Auch zum Anzeigen startet das Tool den Editor Vim. Sie können nun Einträge ändern oder löschen. Damit ist der Funktionsumfang bereits erschöpft; eine Erinnerungsfunktion fehlt.

  Todo scheint nicht mehr als eine Fingerübung zu sein, eine Anleitung fehlt. Um den vorgestellten Editor zu ändern, müssen Sie den Quellcode anpassen. Da bleibt Luft nach oben. (Uwe**Vollbracht/hej)

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 2 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben