Aus Linux-Magazin 04/2018

Werkzeuge im Kurztest

Im Kurztest: TJ 6.0.0, Recount 0.2, GBT 1.2.0, Optool 0.3, Vgrep 2.0.2, Visidata 1.0

TJ 6.0.0

Zeitstempel für Ausgabezeilen

Quelle: https://github.com/sgreben/tj

Lizenz: keine Angabe

Alternativen: keine

Wer sich für lange »make«- oder »compile«-Ausgaben Zeitstempel wie in Logdateien wünscht, findet in TJ einen auskunftsfreudigen Helfer. Das Go-Tool liest von Stdin und schreibt die erweiterten Meldungen nach Stdout.

In der Voreinstellung setzt TJ die Zeitstempel im Json-Format – eine gute Idee, wenn Anwender die Meldungen weiterverarbeiten möchten. Besonders gut lesbar ist das allerdings nicht. Über »-template« gestalten Benutzer die Ausgabe daher nach ihren Wünschen.

Dahinter schreiben sie eigene Definitionen in Go-Syntax oder nutzen eines der vordefinierten Templates, die das Readme auf der Github-Seite auflistet. Es erklärt auch, wie Anwender die Meldungen einfärben – TJ verwendet unterschiedliche Nuancen für die Zeitintervalle, sodass auf einen Blick ersichtlich ist, wie lange ein Arbeitsschritt gedauert hat.

Den Zeitstempel beeinflusst der Schalter »-time-format«. Dahinter geben Benutzer eines der 15 vordefinierten Formate an. Von »ANSIC« über »UnixDate« bis zu verschiedenen RFC-Formaten ist alles dabei. Alle Formate sind im Readme aufgelistet, eine Manpage fehlt.

  TJ fügt informative Zeitstempel in Programmausgaben ein. Auf der Projektseite stehen fertige Binaries bereit, sodass Nutzer schnell starten können.

Recount 0.2

Dateien stapelweise umbenennen

Quelle: http://www.jmos.net/software/recount.html

Lizenz: BSD

Alternativen: Renameutils, Rename

Benutzer, die alle Dateien eines Ordners in einem Rutsch umbenennen möchten, greifen zu Tools wie »rename« oder skripten eine eigene Lösung auf der Shell. Recount empfiehlt sich als grafische Alternative. Während es für Windows-Anwender ein fertiges Binary gibt, erhalten Linuxer ein Tcl/Tk-Skript und eine Installationsanleitung.

Nach dem Start wählen Nutzer ein Verzeichnis aus und sortieren die enthaltenen Dateien per Mausklick alphabetisch oder nach Zeitstempel. Im Bereich »Umbenennen« legen sie dann die gewünschten Änderungen fest. Datei-Endungen behält das Programm bei; optional konvertiert es diese in Kleinbuchstaben. Bei Bedarf passt Recount gleich die Zugriffsrechte an. Als einzige Auswahlmöglichkeit setzt es diese auf »644«.

In der Voreinstellung nummeriert das Tool Dateien fortlaufend durch. Anwender können im Feld »Textteil« einen Bezeichner eintragen, den Recount dann in die neuen Dateinamen einbaut. Damit sind die Konfigurationsmöglichkeiten der aktuellen Version erschöpft.

  Recount punktet mit einer übersichtlichen Oberfläche. Unterverzeichnisse bleiben derzeit außen vor, auch das Setzen der Zugriffsrechte ist auf einen Wert begrenzt.

GBT 1.2.0

Shellprompt individuell gestalten

Quelle: https://github.com/jtyr/gbt

Lizenz: MIT

Alternativen: Bash-Variablen

Die meisten Konsolenfans gestalten ihren Shellprompt nach eigenen Vorstellungen. Go Bullet Train (kurz GBT) peppt den Prompt auf und integriert zusätzlich allerhand Informationen über das System. Als Erstes ersetzen Anwender in der Datei »~/.bashrc« den Inhalt von »$PS1« durch »$(gbt)«.

Die Konfiguration erfolgt über Umgebungsvariablen, die mit »GBT_« beginnen. Darüber ändern Nutzer Schriftart und -farbe. Zudem können sie aus zehn Variablen auswählen, welche die Uhrzeit, das aktuelle Arbeitsverzeichnis, den Hostnamen oder das Betriebssystem einfügen. GBT kann sogar das lokale Github-Repository und die virtuelle Python-Umgebung einblenden. Noch flexibler wird es mit »Custom«: Die Variable integriert vom Benutzer eingegebene Strings.

Gut gefiel den Testern das Prompt-Forwarding-Feature: Bei Gefallen können Anwender ihren mit GBT erzeugten Shellprompt (beispielsweise per SSH) auf einen entfernten Rechner übertragen. Laut Projektseite funktioniert das unter Linux (Terminator, Konsole, Gnome Terminal), Mac  OS (Terminal, I-Term) und Android (Termux).

  GBT peppt den Shellprompt auf. Das Einarbeiten kann etwas Zeit in Anspruch nehmen, eine Anleitung samt Beispielen gibt es nur online.

Optool 0.3

Befehle auf mehreren System ausführen

Quelle: https://github.com/nealwon/optool

Lizenz: MIT

Alternativen: Cluster SSH, PSSH

Admins, die immer wieder die gleichen Befehlsfolgen auf mehreren Systemen absetzen wollen, finden in Optool einen Helfer, der Tipparbeit spart und über SSH mit entfernten Rechnern kommuniziert. Wer das Go-Programm nicht aus den Quellen bauen möchte, findet auf der Projektseite Binärpakete für Darwin, Linux und Windows.

Eine Beispielkonfiguration erhalten Anwender, wenn sie das Tool mit dem Schalter »-V« aufrufen. Sie kopieren die Ausgabe im Yaml-Format und verwenden sie als Vorlage für die eigene Einrichtungsdatei. In der Voreinstellung erwartet das Tool diese unter dem Namen »optool.yml«. Sie unterteilt sich in die drei Bereiche »server«, »auth« und »tags«. Unter »server« fassen Nutzer mehrere Rechner zu einer Gruppe zusammen, die Optool per SSH kontaktiert. Außerdem können sie eine Standardgruppe festlegen, die sie später mit »-g« erreichen.

Die Zugangsdaten gehören in den »auth«-Abschnitt. Außer Passwörtern akzeptiert Optool auch SSH-Schlüssel. Da die Kennwörter im Klartext in der Datei stehen, empfiehlt es sich, die Zugriffsrechte zu beschränken. Unter »tags« sind die auszuführenden Kommandos definiert. Einzelne Befehle setzen Admins beim Aufruf über »-t«, gefolgt vom Kurznamen aus der Konfiguration, ab. Alternativ geben sie hinter »-x« andere Kommandos oder hinter »-s« eine Datei mit mehreren Befehlen ein.

  Das in der aktuellen Version angepriesene Feature, Dateien an mehrere Server zu senden (oder von dort zu laden) funktionierte im Test nicht. Dennoch gefällt Optool, es erleichtert die Arbeit auf mehreren Systemen.

Vgrep 2.0.2

Grep-Alternative

Quelle: https://github.com/vrothberg/vgrep

Lizenz: GPLv3

Alternativen: Grep

Wer nach Textmustern in Dateien sucht, greift zu Grep. Vgrep ist eine gute Alternative, um mehrere Files zu erfassen. Das Tool sucht nach Zeichenketten in Verzeichnissen. Inspiriert wurden die Entwickler dieser Grep-Alternative von dem Tool CGVG, das Schlüsselwörter sucht und modifiziert.

Mit Erscheinen der Version 2.0.0 wechselten die Entwickler von Python nach Go. Das Bauen der aktuellen Variante ist nicht ganz trivial: Vgrep enthält zahlreiche Abhängigkeiten zu Go-Modulen, die Anwender auf Github zusammensuchen müssen. Das fertige Binary nistet sich unter »/usr/local/bin« ein.

Um in einem Ordner nach einem Begriff zu suchen, wechseln Nutzer in diesen hinein und übergeben das Suchmuster hinter dem »vgrep«-Kommando. Das Programm durchforstet alle Dateien und listet die Treffer übersichtlich auf. Dabei erzeugt es einen Index, der neben den Dateinamen auch die Zeilennummer und ein bisschen Kontext enthält.

Vgrep erstellt bei jedem Durchlauf einen Cache und legt ihn unter »~/.cache/vgrep-go« ab. Mit Hilfe des Zwischenspeichers können Nutzer mit Vgrep interaktiv arbeiten und rufen es dazu mit »-i« auf. Das Tool öffnet eine kleine Shell, in der Anwender die Trefferliste bearbeiten und etwa im Standardeditor öffnen können (»show«). »context« zeigt mehr Kontext an, »files« eine Übersicht über Dateien und Anzahl der Treffer. »?« blendet eine Übersicht ein, »quit« beendet den interaktiven Modus.

  Alles in allem macht Vgrep einen guten Eindruck. Das performante Tool überzeugt vor allem mit dem Index und seinem interaktiven Modus.

Visidata 1.0

Tabellendaten auf der Konsole anzeigen

Quelle: http://visidata.org

Lizenz: GPLv3

Alternativen: Tabview

Pager wie »less« und »more« zeigen Textdateien auf der Konsole an und die Browser »links« und »w3m« machen eine recht gute Figur beim Präsentieren von HTML-Files im Terminal. Für CSV- oder TSV-Dateien sind diese Tools eher ungeeignet. Visidata springt in die Bresche und kümmert sich um eine strukturierte Ausgabe solcher tabellarischen Daten. Das Programm setzt Python 3.4 oder neuer voraus; weitere benötigte Module entnehmen Nutzer der Datei »requirements.txt«.

Ohne Parameter aufgerufen listet Visidata alle Dateien im aktuellen Verzeichnis auf. Anwender navigieren mit den Pfeiltasten zum gewünschten File. Dateien im TSV- oder CSV-Format zeigt das Tool in einer Tabelle an. Auch dort bewegen sich Benutzer mit den Cursortasten. Über »/« starten sie eine Suche nach einem regulären Ausdruck in der aktuellen Spalte, mit »g/« in allen Spalten.

Visidata bietet darüber hinaus einfache Funktionen zum Bearbeiten der Tabellen. Mit »a« fügen Anwender eine neue Zeile hinzu, während »d« die aktuelle Zeile löscht und den Inhalt in die Zwischenablage kopiert. Zum Bearbeiten der Zelle unter dem Cursor dient »e«, die ganze Zeile erfasst »ge«. Geänderte Tabellen speichern Anwender über [Strg]+[S]. Eine Übersicht aller Tastenkürzel präsentiert die Onlinehilfe, die über [F1] erreichbar ist.

  Dieses Python-Tool ist äußerst leistungsfähig. Es empfiehlt sich ein Blick ins ausführliche Handbuch, in dem die Entwickler auch beschreiben, wie man mit Visidata den Inhalt zweier TSV-Dateien miteinander verknüpft.

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