Hck 0.5.4
Cut, Xsv und Awk kombiniert
Quelle: https://github.com/sstadick/hck
Lizenz: Public Domain
Alternativen: Cut, Awk
Wer die Ausgabe von Shell-Programmen filtern, sortieren und anders weiterverarbeiten möchte, dem stehen unter Linux mit Tools wie Awk und Cut einige Helfer zur Seite. Die Werkzeuge eignen sich besonders gut dazu, den Output automatisiert zu bearbeiten. Mit dem in Rust implementierten Hck (sprich: Hack) kommt nun ein weiteres Werkzeug hinzu. Sie müssen das Tool nicht selbst kompilieren, sondern können von der Github-Seite ein fertiges Binary beziehen. Hier finden sich auch einige Beispiele sowie ein Performance-Vergleich zwischen Hck und Cut, Awk und Xsv.
Seine Entwickler bewerben Hck als bessere Alternative zu Cut, da sie die Möglichkeit bietet, den Feldtrenner durch einen regulären Ausdruck zu beschreiben. Cut kennt hingegen nur fest definierte Feldtrenner. Außerdem erlaubt Hck es, die Ausgabereihenfolge nach eigenem Gusto zu definieren. Bei den Parametern haben sich die Hck-Entwickler an Cut orientiert. So geben Sie beispielsweise hinter »-d« einen Feldtrenner und hinter »-f« die gewünschten Felder an. Feldtrenner für die Ausgabe stehen hinter »–output-delimiter«.
Es ist auch möglich, bestimmte Felder und Beschreibungen von der Verarbeitung auszunehmen. Dazu dienen die beiden Schalter »-e« und »-E«. Um den Inhalt komprimierter Dateien zu verarbeiten, geben Sie zusätzlich »-z« an. Hck ermittelt dann eigenständig die eingesetzte Kompression und entpackt die Daten vor dem Weiterverarbeiten. Eine Übersicht im Github-Repository zeigt, welche Kompressionsalgorithmen Hck unterstützt und welche Tools auf dem System installiert sein müssen, damit die Kooperation gelingt.
Hck vereint einige interessante Funktionen und Features von Cut, Awk und Xsv in einem einzigen Tool. Ein Blick lohnt sich.
Tqdm 4.61.2
Fortschritt in Skripten anzeigen
Quelle: https://github.com/tqdm/tqdm
Lizenz: MPL, MIT
Alternativen: Pv
Eine Fortschrittsanzeige ist vor allem beim Download oder bei der Verarbeitung großer Datenmengen hilfreich, um die verbleibende Dauer abzuschätzen. Viele kleinere Programme oder auch eigene Skripte bieten diese Funktion in der Regel nicht. Mit dem Python-basierten Tool Tqdm können Sie das Feature nachrüsten. Ursprünglich als reines Python-Modul gedacht, stellt Tqdm auch eine ausführbare Variante für die Konsole zur Verfügung, die Sie in Befehle oder Shell-Skripte integrieren können.
Tqdm erwartet seine Daten von der Standardeingabe. Das Tool zählt die erhaltenen Bits und reicht die empfangenen Daten über seine Standardausgabe weiter. Sie können diese nun an ein weiteres Tool übergeben oder sie in eine Datei schreiben. Sofern Sie keine Parameter angeben, rechnet Tqdm die erhaltenen Daten in Bits zusammen und zählt die zur Verarbeitung benötigte Zeit. Bevorzugen Sie die Angabe in Byte, schalten Sie über »–bytes« um. Den Fortschrittsbalken liefert Tqdm erst dann, wenn Sie hinter »–total« einen Wert für die erwartete Datenmenge definieren. Beispiele zur Berechnung liefert die Github-Seite.
In einigen Konstellationen, beispielsweise über SSH-Verbindungen, zeigt Tqdm den Fortschrittsbalken nicht korrekt an. Abhilfe schafft in diesem Fall der Schalter »–ascii«. Mit »–desc« ordnen Sie dem Fortschrittsbalken eine Beschreibung zu. In der Voreinstellung aktualisiert das Python-Tool die Anzeige jede Millisekunde; Sie können aber hinter »–mininterval« auch andere Zyklen vorgeben. Der Parameter »–bar_format« gestaltet das Erscheinungsbild des Fortschrittsbalkens.
Tqdm gefällt und ist nicht nur für ungeduldige Zeitgenossen eine praktische Erweiterung. Bonuspunkte gibt es für die ausführliche Anleitung auf der Projektseite.
Bridge 0.4.7
Dateiduplikate finden
Quelle: https://github.com/atc0005/bridge
Lizenz: MIT
Alternativen: Fdupes
Bridge ist der perfekte Assistent für alle Jäger und Sammler, die ihren Verzeichnisbaum nach identischen Dateien durchforsten möchten. Fertige Pakete des in Go geschriebenen Tools gibt es auf Github. Es fehlt jedoch eine Manpage, sodass sich ein Blick in die Online-Dokumentation empfiehlt. Bridge kennt die beiden Betriebsarten »report« und »prune«, wobei erstere lediglich analysiert und Bericht erstattet.
Die mit dem Parameter »-path« übergebenen Verzeichnisse prüft das Tool auf Duplikate. Soll Bridge den ganzen Verzeichnisbaum durcharbeiten, geben Sie außerdem »-recurse« an. Das Ergebnis landet in einer CSV-Datei, deren Namen hinter »-csvfile« steht. Bridge erkennt eine Datei als Duplikat, wenn sie wenigstens zwei Mal im zu durchsuchenden Verzeichnisbaum vorkommt; der Schalter »-duplicates« erhöht den Wert. Da bei großen Platten und vielen Dateien die Suche etwas dauern kann, definieren Sie hinter »-size« eine Mindestgröße.
Im nächsten Schritt starten Sie das Aufräumen mit »bridge prune«. Hinter »-input-csvfile« geben Sie die vorher ermittelte Liste mit den Duplikaten an. Um auf Nummer sicher zu gehen, nehmen Sie mit »-dry-run« einen Testlauf vor. Bridge bietet außerdem an, die Duplikate nicht direkt zu entfernen, sondern sie in einem über »-backup-dir« definierten Verzeichnis abzulegen. Dabei behält das Tool die ursprüngliche Verzeichnisstruktur bei. Um die Verarbeitung beim Auftreten von Fehlern fortzusetzen, geben Sie zusätzlich »-ignore-errors« an.
Das interessante Tool Bridge entschlackt den Datenbestand. Mit der Reportfunktion eignet es sich auch zur reinen Analyse.
Bottom 0.6.3
Systemauslastung im Blick behalten
Quelle: https://github.com/ClementTsang/bottom
Lizenz: MIT
Alternativen: Top, Htop
Top und seine Ableger wie Htop und Atop helfen beim Monitoring der Ressourcen auf Unix-Systemen. Mit Bottom gesellt sich ein weiterer, in Rust implementierter Vertreter dazu. Das Tool hat nicht nur die Prozesse im Blick, sondern auch das Netzwerk, den Arbeitsspeicher, die Temperatur und diverse Speichermedien. Die unter Github angebotenen Pakete enthalten außer der ausführbaren Datei btm auch Konfigurationsdateien zur Integration in gängige Shells wie Bash oder Fish.
Das Bottom-Fenster unterteilt sich in mehrere Bereiche, die mehrere Systemkomponenten erfassen. Interessieren Sie sich nur für die Prozesse, starten Sie das Tool mit »–basic«. In der Widget-Ansicht können Sie mit den Pfeiltasten einen Bereich anwählen, den [E] dann in den Vollbildmodus schaltet. In der Prozessliste hilft [Umschalt]+[ 7] beim Suchen nach einem bestimmten Prozess; reguläre Ausdrücke sind erlaubt. Das Speicher-Widget listet alle Einhängepunkte und die jeweilige Speicherbelegung des Geräts auf, während das Netzwerk-Widget den Datendurchsatz anzeigt. CPU-, Netz- und Arbeitsspeicherauslastung stellt Bottom alternativ als Graphen dar.
Weitere Kommandozeilenparameter geben die Prozesse als Baum aus oder gruppieren sie. Mit dem Parameter »–color« beeinflussen Sie die farbliche Darstellung, wobei Bottom die Themes »standard«, »gruvbox«, »gruvbox-light«, »nord« und »nord-light« kennt.
Für Bottom als Ersatz für Top und Co. spricht, dass es viele Informationen in einer Ansicht vereint.
Zoxide 0.7.2
Clevere Cd-Alternative
Quelle: https://github.com/ajeetdsouza/zoxide
Lizenz: MIT
Alternativen: Cd
Kommandozeilenfans tippen ständig den Befehl »cd« oder definieren eigene Abkürzungen für oft besuchte Verzeichnisse. Eine Alternative bietet das in Rust entwickelte Tool Zoxide, das die Entwickler als “a smarter cd command” bewerben. Es verwaltet vorher definierte Pfade wie Lesezeichen. Sie können eines der unter Github angebotenen Binarys installieren. Neben der ausführbaren Datei enthält das Paket auch eine Manpage, die alle wichtigen Funktionen erklärt. Eine Installationsroutine fehlt allerdings. Zoxide läuft unter Linux, MacOS, Windows, BSD und Android.
Ohne Parameter aufgerufen, listet Zoxide die verfügbaren Befehle auf. Mit »init« erzeugen Sie beispielsweise eine Konfigurationsdatei für eine beliebige Shell, die die beiden Befehle »z« und »zi« zur Steuerung des Tools definiert. Dabei funktioniert »z« ähnlich wie »cd«, gibt sich aber mit einem Teil eines Verzeichnisnamens zufrieden. Zoxide wechselt in das erste Verzeichnis seiner Datenbank, das auf das Muster passt. Gibt es mehrere gleichnamige Ordner, wählt das Tool eventuell den falschen aus. In dem Fall hilft »zi«, das einen interaktiven Modus startet. Zoxide setzt zum Verwalten der Verzeichnisse auf eine SQLite-Datenbank, die unter Linux in »$HOME/.local/share/zoxide« liegt.
Hinter »zi« steckt der lange Befehl »zoxide query -i«. Das Tool bietet noch andere Abfragemöglichkeiten. Um nur zu sehen, welche Verzeichnisse Zoxide verwaltet, tippen Sie »zoxide query -l«. Neue Ordner nimmt das Kommando »zoxide add« auf. Dabei geben Sie den vollen Pfad an. Um das aktuelle Verzeichnis in die Liste aufzunehmen, reicht »zoxide add .« aus. Der Befehl »zoxide remove« entfernt Ordner aus der Datenbank.
Möchten Sie sich die Navigation im Verzeichnisdschungel erleichtern, sollten Sie Zoxide als Lotsen engagieren.
Emerger 0.8.1
Pakete des Systems aktualisieren
Quelle: https://github.com/MasterCruelty/eMerger
Lizenz: MIT
Alternativen: Apt, Yum
Einer für alle, so lautet das Motto des kleinen Tools Emerger, eines Shell-Skripts, das als Wrapper für den jeweiligen Paketmanager einer Distribution arbeitet. Es erkennt selbstständig das zugrundeliegende System und unterstützt die zwölf Tools Apt, Apt-get, Dnf, Emerge, Flatpak, Nixos, Pacman, Pkg, Rpm, Snap, Yum und Zypper.
Sie laden das Archiv von Github herunter und rufen nach dem Entpacken das Installationsskript über »./setup.sh« auf. Es erstellt unter anderem einen Alias namens »up«, der auf die Datei »src/eMerger.sh« verweist. Allerdings ist die Installation nicht LFS-konform, sondern verlinkt lediglich das entpackte Verzeichnis. Admins tun also gut daran, Emerger direkt an seiner späteren Position zu entpacken. Die über »-help« erreichbare Online-Hilfe kommt recht spartanisch daher.
Der Aufruf erfolgt wie gesagt über »up«. Emerger erkennt eigenständig den lokalen Paketmanager und aktualisiert falls nötig die Paketliste, bevor das Upgrade startet. Das Tool prüft außerdem, ob Sie die nötigen Administratorrechte besitzen, und ruft im Zweifelsfall zusätzlich Sudo auf. Sofern Sie das automatische Aktualisieren mit »-au« aktiviert haben, nimmt Emerger das Upgrade sofort vor, andernfalls fragt es nach.
Wer viele verschiedene Distributionen pflegen muss, findet in Emerger einen praktischen Helfer, der die Kommunikation mit dem darunterliegenden Paketmanager übernimmt. (Uwe**Vollbracht/hej)










