Aus Linux-Magazin 01/2023

CLI-Werkzeuge im Kurztest

Notizzettel Brain 2.3.3, Diensteprüfer Wait4x 2.8.0, Rm-Alternative Rmx 0.1.6, Kernel-Toolbox Krn 5.4, Nickname-Sucher Sherlock 0.14.2, Markdown-Wiki Smeagol 0.4.3.

Brain 2.3.3

Notizen auf der Kommandozeile verwalten

Quelle: https://github.com/robert-lag/brain

Lizenz: GPLv3

Alternativen: Task, Taskwarrior

Wollen Sie Ihre Notizen nicht in der GUI verwalten, finden Sie in Brain eine Gedächtnisstütze für die Shell. Das Rust-Tool dient als Zettelkasten, die Inhalte lassen sich durch Verschlagworten und Querverweise vernetzen. Das auf Github angebotene Binärarchiv setzt die Glibc 2.32 oder neuer voraus; Debian- und Ubuntu-Anwender müssen Brain selbst aus den Quellen bauen.

Zum Erfassen einer neuen Notiz legen Sie mit dem Befehl »brn init« im aktuellen Verzeichnis eine Struktur zum Verwalten der Brain-Daten an. Dabei entsteht unter anderem der Ordner ».zettelkasten/«, der den Verlauf, die Formatvorlage für die Notizen und die für die Funktion »graph« des Tools notwendigen Daten aufnimmt. Die Notizen selbst schreibt Brain in Markdown-Dateien. Brain greift auf die beiden Umgebungsvariablen »EDITOR« und »BROWSER« zu.

Neue Notizen erstellen Sie mit »brn add«, dahinter notieren sie den Namen für den Eintrag. Brain öffnet die Formatvorlage im Standardeditor, und Sie hinterlegen Ihre Angaben im Markdown-Format. Der Eintrag erhält beim Speichern eine eindeutige ID aus Datum und Zeitstempel. Das Kommando »brn list« führt alle Zettel auf. »brn open« gefolgt vom Namen oder der ID öffnet die Notiz im Editor. Nicht mehr benötigte Einträge entfernt »brn rm«. »brn graph« zeigt eine grafische Version des Zettelkastens im Webbrowser.

  Brain gefällt. Allerdings bietet es nur eine einfache Online-Hilfe; alle Funktionen erklärt die Github-Seite.

Wait4x 2.8.0

Verfügbarkeit von Diensten und Ports prüfen

Quelle: https://github.com/atkrad/wait4x

Lizenz: Apache 2.0

Alternativen: Netcat, Wait-for-it

Gerade bei komplexeren Systemen ist die Startreihenfolge von Server-Diensten relevant. Was auf einem lokalen Rechner das jeweilige Init-System regelt, leisten in größeren Umgebungen Orchestrierungslösungen. Suchen Sie nach einer schlankeren Alternative, greifen Sie zu Wait4x. Das Tool prüft, ob an einer IP-Adresse auf einem bestimmten Port ein Dienst antwortet. Es unterstützt die Protokolle TCP und HTTP sowie Dienste wie Redis, MySQL, PostgreSQL, InfluxDB, MongoDB und RabbitMQ.

Auf der Github-Seite finden Sie Pakete für diverse Betriebssysteme und Plattformen. Sie enthalten neben dem Binary ein README mit vielen Beispielen. Der Aufruf »wait4x help« nennt die wichtigsten Optionen. Um eine TCP-Verbindung zu prüfen, schreiben Sie die IP-Adresse und optional den Port hinter den Befehl »wait4x«. In der Voreinstellung prüft das Tool 10 Sekunden lang die Verfügbarkeit. Der Schalter »-t« definiert eine andere Dauer, »-i« beeinflusst das Intervall.

Sobald eine Verbindung zum Ziel besteht, beendet Wait4x den Test. Sie können ein Programm oder Kommando definieren, das nach bestandener Prüfung laufen soll. So lässt sich etwa die Startreihenfolge von Diensten über mehrere Systeme hinweg synchronisieren. Schlägt die Verbindung fehl, quittiert Wait4x das mit einem Fehlercode. Über »-v« invertieren Sie den Test: Er gilt dann als erfolgreich, wenn die Verbindung beendet wurde.

  Wait4x ist äußerst flexibel, die Beispiele auf der Projektseite bieten gute Anregungen.

Rmx 0.1.6

Rm-Alternative mit mehr Features

Quelle: https://github.com/demfabris/rmx

Lizenz: Public Domain

Alternativen: Rm

Das in Rust geschriebene Rmx bewerben die Entwickler als Rm mit zusätzlichen Features und einer besseren Performance. Sie müssen das Tool selbst aus den Quellen bauen. Beim Download von Github schalten Sie am besten auf die Tags-Ansicht um, denn die Abteilung Releases wirkt recht unübersichtlich. Die Installation auf dem Testsystem ließ sich mit dem Rust-Paketmanager Cargo in zwei Minuten erledigen.

Genau wie bei Rm erfolgt die Steuerung bei Rmx über Aufrufparameter. Um den Umstieg oder den Ersatz in Shell-Skripten zu erleichtern, übernimmt Rmx gängige Parameter und Optionen. So löscht »-r« ganze Verzeichnisbäume, »-i« respektive »-I« fragen zur Sicherheit nach. Mit »–one-file-system« überspringt Rmx alle Verzeichnisse, die in anderen Dateisystemen liegen. Leere Verzeichnisse entfernt »-d«.

Während beim Einsatz von Rm die gelöschten Daten in der Regel endgültig verloren sind, bietet Rmx eine Zusammenarbeit mit dem Papierkorb der jeweiligen Desktop-Umgebung an. Der Parameter »-t« schiebt die Löschkandidaten in den Abfalleimer (Vorgabe: »$HOME/.local/share/Trash/files/«). Mit »–shred« bietet das Rmx die Möglichkeit, Dateien unwiederbringlich zu entfernen.

  Die auf Github beworbene verbesserte Geschwindigkeit und die dort gelisteten Leistungswerte konnten wir im Test nicht reproduzieren. Dennoch lohnt sich ein Blick auf die Rmx, schon wegen der Papierkorbfunktion und Features wie Multithread-Löschen und Symlink-Verfolgung.

Krn 5.4

Linux-Kernel verwalten

Quelle: https://github.com/TNZfr/krn

Lizenz: GPLv2

Alternativen: keine

Heute kompiliert man nur noch selten einen Linux-Kernel selbst. Alle Distributionen liefern angepasste Kernel-Versionen aus. Wer dennoch mit unterschiedlichen Kernel-Versionen arbeiten möchte oder muss, findet in der Skriptsammlung Krn Werkzeuge, die dabei helfen.

»Main.sh«, das zentrale Werkzeug der Sammlung, schreibt ohne Parameter aufgerufen eine einfache Online-Hilfe samt aller verfügbaren Befehle ins Terminal. Beim ersten Aufruf erzeugt das Skript die ausführbare Datei »$HOME/.krn/bashrc«, die vier Umgebungsvariablen setzt und damit Informationen zur Distribution, Systemarchitektur und Speicherplatz für heruntergeladene Kernel-Quellen festhält. Das Kommando »List« zeigt alle verfügbaren lokalen Kernel an, »Search« sucht nach einer bestimmten Version.

Krn durchsucht nicht nur die Repos der Distributionen, sondern auch Kernel.org. Mit »Get« laden Sie Kernel-Pakete aus dem Repository der eigenen Distribution, »GetSource« bezieht die Quellen von Kernel.org. Sie kompilieren einen Kernel mit »Compile« und »CompilInstall«. Krn verwendet die aktuell im System genutzte Kernel-Konfiguration, was im Test Probleme bereitete. So können ältere Kernel mit einer aktuellen Konfiguration nichts anfangen, das Bauen brach beim Erzeugen der Zertifikate für UEFI oder Canonical ab. Im Netz gibt es Tipps, um diese Probleme zu beheben.

  Grundsätzlich ist Krn eine sinnvolle Toolbox, allerdings hakt es in der aktuellen Version noch an ein paar Stellen.

Sherlock 0.14.2

Benutzernamen in sozialen Netzwerken finden

Quelle: https://github.com/sherlock-project/sherlock

Lizenz: MIT

Alternativen: Qwant

Sherlock fahndet in sozialen Netzwerken nach Benutzernamen, etwa auf Twitch, Tiktok, Instagram und Facebook. Die Spürnase durchsucht auch weniger bekannte Plattformen wie das Fediverse und Communities wie Github, Sourceforge, CTAN oder Soundcloud. Das Tool arbeitet unter Linux, MacOS und Windows und setzt Python 3.6 oder neuer voraus. Sie beziehen die Quellen von Github oder folgen der Beschreibung auf der Projektseite, um ein eigenes Docker-Image zu bauen.

Beim Start übergeben sie Sherlock den oder die gesuchten Benutzernamen als Parameter. Nach getaner Arbeit druckt das Tool seine Ergebnisse als Liste im Terminal aus. Neben dem Namen der Plattform zeigt es jeweils den Link zum Account an. Alternativ schreibt »–output« die Ergebnisse in eine Datei. Forschen Sie nach mehreren Benutzernamen, definieren Sie hinter »–folderoutput« einen Ordner, in dem Sherlock die Berichte dann speichert.

Über den Schalter »-v« erfahren Sie, wie lange die Spürnase in jedem Portal gesucht hat. Außerdem kann sich Sherlock tarnen. Über »-t« schalten Sie eine Suchanzeige über das Tor-Netzwerk, was zu einer längeren Laufzeit führt. Um die Anfrage noch weiter zu verschleiern, bauen Sie mit »–unique-tor« für jede Anfrage neue Tor-Verbindung auf. Zum Weiterverarbeiten der Ergebnisse dienen »–csv« und »–xlsx«.

  Mit dem zuverlässige Social-Media-Detektiv Sherlock prüfen Sie bei Bedarf auch, ob ihr Wunsch-Alias noch auf allen Plattformen verfügbar ist.

Smeagol 0.4.3

Lokales Wiki im Markdown-Format

Quelle: https://github.com/AustinWise/smeagol

Lizenz: MIT

Alternativen: Wiki.js, Gollum

Markdown erfreut sich großer Beliebtheit, selbst Plattformen wie Github setzen für die Dokumentation darauf. Das in Rust geschriebene Smeagol verwaltet Markdown-Dateien wie in einem lokalen Wiki. Auf Github finden sich Pakete für viele Betriebssysteme und Plattformen. Smeagol bringt seine eigene HTTP-Engine mit, sodass Sie Ihre Dokumente sofort im Webbrowser öffnen und bearbeiten können.

Da Smeagol die Dokumente per Git verwaltet, geben Sie beim Start den Pfad zum lokalen Repository an. Alternativ sorgt »-fs« dafür, dass das Tool die Dateien im Dateisystem managt. Smeagol wartet an Port 8000 der lokalen Schnittstelle auf Anfragen. Für Zugriffe von außen legen Sie mit »–host« und »–port« eine Adresse fest. Allerdings bietet Smeagol weder eine Benutzerverwaltung noch eine Zugriffskontrolle. Als Indexseite dient jeweils die Datei »README.md« im angegebenen Ordner. Das ändern Sie bei Bedarf in der Konfigurationsdatei »smeagol.toml«.

Ein Klick auf Overview im Browser öffnet eine Übersicht des aktuellen Verzeichnisbaums, in der Sie durch die Ordner navigieren. Trifft Smeagol in einem Verzeichnis auf eine »README.md«-Datei, lädt es diese sofort. Über Edit verändern Sie geöffnete Files. Der Reiter Preview zeigt zur Kontrolle eine Vorschau der Änderungen.

  Das noch junge Smeagol wurde vom Git-basierten Wiki Gollum inspiriert. Es erreicht noch nicht dessen Funktionsumfang, eignet sich aber gut als schlanke lokale Alternative. (hej/jlu)

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
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben