Interessante CLI-Tools, die mit Rust erstellt wurden
Orhun Parmaksız hat bei RustLab 2024 seine 7 bevorzugten CLI-Tools vorgestellt: 7 Rust Terminal Tools That You Should Use. Er selbst ist Entwickler beim Projekt Ratatui, das TUI-Schnittstellen für Rust bereitstellt.
Seine Favoriten sind:
tui-journal: https://github.com/AmmarAbouZor/tui-journal
netscanner: https://github.com/Chleba/netscanner
Meine Erfahrungen damit:
tui-journal - ein TUI-Journal- (Notizen-) Programm. Leicht zu installieren. Für jedes topic, das man anlegt, gibt es einen Editierbereich, der aber per se unstrukturiert ist. Also kein Ersatz für ein Weblog oder meine reST-Notizen.
-
repgrep – Suchen und Ersetzen in Verzeichnisbäumen. Es basiert auf dem Tool ripgrep, das nicht so simpel zu installieren ist, daher:
git clone https://github.com/BurntSushi/ripgrep cd ripgrep cargo build --release --features pcre2 cargo install repgrep
Man kann beispielsweise in einem Source tree nach einem Bezeichner suchen, bekommt die Treffer (pseudo-) grafisch angezeigt, kann sie aus- oder abwählen und anschließend durch einen anderen String ersetzen.
serie – git-Historie im TUI grafisch darstellen. Installation einfach mit
cargo install --frozen serie(lt. Homepage auszusprechen wie im Deutschen!). Aufruf in einem git-Baum zeigt direkt die Historie an; man kann mit dem Cursor einen Commit auswählen, Enter drücken und bekommt Details dazu angezeigt. Sehr einfach, sehr nützlich.rainfrog – ein TUI-Datenbank-Client für PostgreSQL, SQLite, duckdb (experimentell) und andere. Installation mit
cargo install rainfrog. Bedienung und Funktionalität können mich nicht überzeugen; mit den CLI-Clients (psql, sqlite3) geht's einfacher. Vermutlich soll rainfrog mit abgespeicherten Queries manche häufigen Abfragen abrufbar machen, aber die könnte man genausogut auch anders skripten.netscanner – ein Tool zur Analyse des Datenverkehrs im LAN. Installation einfach mit
cargo install netscanner; das Programm muss mit Root-Rechten ausgeführt werden. Es werden zunächst die lokalen Interfaces und die erkannten Wifi-Netze angezeigt; man kann ein lokal erreichbares Netz scannen. Man kann sich die ein- und ausgehenden Pakete anzeigen lassen, die offenen Ports und den Traffic. Die Navigation im TUI ist nicht gerade selbsterklärend (in den Labels sind hier und da einzelne Buchstaben hervorgehoben, wenn man die drückt, passiert was).glim – “terminal user interface (TUI) for monitoring GitLab CI/CD pipelines and projects”. Nicht ausprobiert.
atac – ein Web-API-Client fürs TUI. Installation mit
cargo install atac --lockedscheiterte mit einer Compilerfehlermeldung.
Kurz gefasst: repgrep und serie passen gut in eine Sammlung von CLI-Tools.