To-do-Manager Godo 0.16.1, Cut-Alternative Tuc 0.11.0, SSL-Zertifikatsprüfer Checkssl 0.4.3, Dateien und Ordner verwalten mit Punch 1.5.0, Find-Alternative Fd 8.4.0, FTP-Server Ftpserver 0.11.0.
Godo 0.16.1
Todo-Listen auf der Shell verwalten
Quelle: https://github.com/rsHalford/godo
Lizenz: GPLv3
Alternativen: Task, Taskwarrior
Suchen Sie eine schlanke Aufgabenverwaltung für die Konsole, sollten Sie einen Blick auf Godo werfen. Das in Go geschriebene Tool fehlt in den Repos der gängigen Distributionen, Sie bauen es aus den auf Github angebotenen Quellen selbst. Im Gegensatz zur Konkurrenz gibt sich Godo eher schlicht und kommt ohne aufwendige GUI aus. Sie steuern es über Aufrufparameter und Unterbefehle. Eine neue Aufgabe erfassen Sie mit »add«, gefolgt vom Namen des Tasks. Enthält der Leer- oder Sonderzeichen, schließen Sie ihn in Anführungszeichen ein. »remove« entfernt einen Task.
Beim ersten Start legt Godo in »~/.config/godo/« eine Konfigurationsdatei an; die erfassten Aufgaben speichert es als JSON-Dateien im Verzeichnis »~/.local/share/godo/«. Godo ordnet die Tasks nach der Eingabereihenfolge an. Dringliche Aufgaben priorisieren Sie mit dem Schalter »-p«, sodass sie stets am Kopf der Liste erscheinen. Eine Aufgabenübersicht rufen Sie mit »list« ab, wobei Godo nur Unerledigtes anzeigt. Erst »list -a« blendet alle Tasks ein. Der Befehl »done« gefolgt von der Nummer einer Aufgabe markiert diese als erledigt. Mit »edit« fügen Sie einer Aufgabe Notizen hinzu, wozu Godo den Standard-Texteditor öffnet. Um Tasks zu gruppieren, fügen Sie ihnen zunächst ein Tag hinzu und fassen die Tags dann zu Gruppen zusammen.
Es gibt leistungsfähigere Task-Manager für die Konsole, doch das schlichte Godo macht auch auf entfernten Rechnern per SSH eine gute Figur.
Tuc 0.11.0
Cut-Alternative
Quelle: https://github.com/riquito/tuc
Lizenz: GPLv3
Alternativen: Cut, Awk
Üblicherweise dienen Cut oder in komplexeren Fällen Awk dazu, Zeichenketten in Shell-Skripten oder Programmausgaben in einzelne Elemente zu zerlegen. Das in Rust geschriebene Tuc versteht sich als kompakte Alternative mit mehr Features als Cut und einer einfacheren Bedienung als Awk. Da Tuc in den Repos der meisten Distributionen noch fehlt, installieren Sie eines der auf Github angebotenen Pakete. Neben der Standardversion gibt es auch eine Variante mit Unterstützung für reguläre Ausdrücke.
Die Konfiguration erfolgt über Aufrufparameter, eine Übersicht aller Optionen liefert der Schalter »-h«. Die zu bearbeitende Zeichenkette übermitteln Sie über eine Pipe an Tuc. In der Vorgabe nutzt das Tool den Tabulator als Feldtrenner, ein alternatives Zeichen schreiben Sie hinter »-f«. Die Reihenfolge der Felder beim Aufruf bestimmt deren Sortierung im Output. Ähnlich wie Cut schreibt Tuc mit »-s« nur solche Zeilen ins Terminal, die den Feldtrenner enthalten. Um das Einarbeiten zu erleichtern, haben die Entwickler einige Optionen von Cut übernommen. So invertiert »–complement« die Feldauswahl, »-c n« schreibt den n-ten Buchstaben hinter einem Trenner ins Terminal. Komplexere Feldtrenner geben Sie hinter »-e« an, sie erfordern aber die Tuc-Variante mit Regex-Unterstützung.
Trotz der noch etwas dünnen Dokumentation lohnt sich ein Blick auf Tuc. Die zahlreichen Anwendungsbeispiele auf Github helfen beim Ausprobieren weiter.
Checkssl 0.4.3
SSL-Zertifikate prüfen
Quelle: https://github.com/szazeski/checkssl
Lizenz: MIT
Alternativen: OpenSSL
Moderne Webbrowser zeigen an, ob eine Website SSL-verschlüsselt ist, und warnen vor abgelaufenen Zertifikaten und veralteten TLS-Versionen. Mit Checkssl automatisieren Sie die Zertifikatsprüfung für mehrere Server. Auf Github finden Sie fertige Pakete des in Go geschriebenen Tools, die neben dem Binary eine kurze README-Datei mit Beispielen enthalten. Der Aufruf »checkssl -h« hilft bei den ersten Schritten.
Zur Zertifikatsprüfung rufen Sie das Tool zusammen mit der URL des fraglichen Webservers auf. Läuft der Dienst nicht auf dem Standard-Port, hängen Sie die entsprechende Nummer hinter einem Doppelpunkt an die Adresse an. Checkssl ermittelt das Ablaufdatum des Zertifikats und der zugehörigen CA-Stelle und zeigt zudem die IP-Adresse der Domain, die verwendete HTTP- und TLS-Version, die Verschlüsselungs- und Hash-Algorithmen sowie falls möglich die eingesetzte Server-Software sowie den Hosting-Provider an.
Eine farbige Darstellung gestaltet die Ausgabe übersichtlich, lässt sich mit »-no-color« jedoch bei Bedarf deaktivieren. Der Schalter »-json« liefert die Ergebnisse zur automatisierten Weiterverarbeitung im JSON-Format. Da Checkssl verschiedene Return-Codes zurückgeben kann, macht es auch in eigenen Skripten oder Monitoring-Lösungen eine gute Figur.
Checkssl erfüllt seine Aufgabe zuverlässig und meldet sogar zu viele Weiterleitungen bei einer Prüfung. Müssen Sie viele SSL-Zertifikate überwachen, lohnt sich ein Blick auf das Tool.
Punch 1.5.0
Datei- und Verzeichnis-Verwaltung in Rust
Quelle: https://github.com/spicylemonade/punch
Lizenz: MIT
Alternativen: Touch, Mkdir
Die Punch-Entwickler wollen sich die Bash-Befehle zum Erzeugen und Entfernen von Verzeichnissen und Dateien nicht merken, ganz abgesehen von den Optionen, die diese Kommandos mitbringen. Daher fungiert das Rust-Programm als einziger Befehl für alles. Das Tool fehlt in den Paketquellen der Distributionen noch, Sie kompilieren es aus den auf Github angebotenen Quellen selbst. Eine aktuelle Rust-Version auf dem eigenen System vorausgesetzt, baut das Skript »build.sh« aus dem Quellarchiv das Werkzeug, legt das Binary unter »~/.punch/bin/« ab und legt für die Bash und die Z-Shell einen Alias an.
Die Bedienung von Punch ist sehr einfach. Um eine leere Datei anzulegen, geben Sie den gewünschten Namen beim Aufruf an. Punch erzeugt die Datei dann im aktuellen Verzeichnis. Alternativ benennen Sie den vollen Pfad. Ein neues Verzeichnis entsteht mit der Option »-dir«, ebenfalls unter Nennung des Pfads. Hängen Sie einen abschließenden Schrägstrich an den Ordnernamen an, dürfen Sie »-dir« auch weglassen. Zum Entfernen von Dateien und Verzeichnissen verwenden Sie den Parameter »-d«, »-din« räumt einen ganzen Verzeichnisbaum auf. »-h« blendet eine kurze Online-Hilfe ein. Damit ist der Funktionsumfang der aktuellen Punch-Version auch schon erschöpft.
Eine interessante Idee, allerdings bietet Punch beim derzeitigen Funktionsumfang noch keinen wirklichen Mehrwert gegenüber den klassischen Shell-Befehlen.
Fd 8.4.0
Benutzerfreundliche Find-Alternative
Quelle: https://github.com/sharkdp/fd
Lizenz: Apache 2.0
Alternativen: Find, Locate
Wer auf der Kommandozeile nach Dateien oder Verzeichnissen sucht, greift in der Regel zu Find. Als flotte Alternative empfiehlt sich das Rust-basierte Fd. Ältere Ausgaben des Tools finden sich in den Repos vieler Distributionen. Pakete der aktuellen Version finden Sie im Github-Repository. Sie bringen unter anderem Anpassungen für die Autovervollständigung gängiger Shells wie der Bash oder der Fish mit.
Wie das Vorbild unterstützt das Tool reguläre Ausdrücke. Eingefleischte Find-Anwender müssen jedoch umdenken: Das Suchmuster und das zu durchsuchende Verzeichnis stehen bei Fd immer an letzter Stelle im Aufruf, die restlichen Optionen davor. »-t« definiert den Objekttyp wie Datei, Verzeichnis oder Symlink. »-e« filtert nach gewünschten Dateierweiterungen. Die Größe steht hinter »-S«. Über »-x« und »-X« wenden Sie Programme oder Befehle auf die Treffer an.
Bei den Zeitstempeln unterstützt das Tool lediglich »–changed-within« und »–changed-before«. Bisher ist es noch nicht möglich, nach dem Zeitpunkt des letzten Zugriffs oder der Erstellung zu suchen. Fd färbt in der Vorstellung die Ausgabe ein. Um das zu unterbinden, verwenden Sie den Schalter »-c never«. Nach allen Aufrufparametern signalisiert »–« das Ende der Optionen; danach folgt das Suchmuster.
Zwar hat Find derzeit in Sachen Funktionsumfang noch die Nase vorn, dennoch bietet Fd bereits eine interessante Alternative.
Ftpserver 0.11.0
FTP-Server und Gateway
Quelle: https://github.com/fclairamb/ftpserver
Lizenz: MIT
Alternativen: ProFTPD, Vsftpd
Lange vor dem WWW und HTTP(S) galten FTP-Server als die Informationsquelle im Internet, und das File Transfer Protocol war bis etwa Mitte der 1990er das meistgenutzte Protokoll zur Datenübertragung. Die Cloud-Ära hat fast allen FTP-Servern den Garaus bereitet, dennoch kann es Gründe für einen eigenen Server geben. Das in Go implementierte Ftpserver eignet sich mit seinen SFTP-, S3-, Dropbox- und Google-Drive-Konnektoren auch als Gateway zwischen angestaubten FTP-Servern und modernen Cloud-Dateisystemen.
Beim ersten Aufruf erzeugt Ftpserver eine JSON-Konfigurationsdatei, die sich als Basis für eigene Anpassungen eignet. Eingehende Verbindungen nimmt der Server an Port 2121 entgegen. Für die Datenübertragung kommt ein beliebiger Port aus dem Bereich zwischen 2122 und 2130 zum Einsatz. Als Basisverzeichnis dient in der Voreinstellung »/tmp«. Benutzernamen und Passwort sollten Sie sofort ändern.
Eine Beispielkonfiguration im Github-Repository kann als Vorlage für die eigene Einrichtung dienen. Dort finden Sie auch eine Anleitung zum Aktivieren der TLS-Verschlüsselung sowie Beispiele dafür, wie Sie Ftpserver als Gateway zu gängigen Cloud-Anbietern nutzen. Ältere Programme, die nur FTP unterstützen, können so mit diesen Diensten kommunizieren.
Ftpserver macht eine gute Figur. Lediglich die Dokumentation könnte umfangreicher sein. Sie sollten sich auf einige Fehlversuche gefasst machen. (Uwe**Vollbracht/hej/jlu)











