Nur eine kurze Frage. Ist es möglich, die Ausgabe auf Ubuntu 16.04 LTS zu tabulieren? Ich habe unten zwei Bilder erstellt, um zu veranschaulichen, was ich damit meine.
command-line
bash
Alex Ng
quelle
quelle
YOUR COMMAND | indent
oder wenn Sie einen anderen Befehl davor eingeben müssten (könnte sogar nur ein Unterstrich sein) wie_ YOUR COMMAND
?Antworten:
Sie könnten so etwas tun - mit Dateideskriptoren:
Speichern Sie den aktuellen Ausgabedeskriptor, damit wir ihn später wiederherstellen können
Leiten Sie den Ausgabestream an eine Prozessersetzung weiter , die die Registerkarte einfügt - zum Beispiel
Ab diesem Zeitpunkt wird bei jedem Prozess, der in die Standardausgabe schreibt, diese Ausgabe durch den
paste
Befehl zum Einfügen von Registerkarten am Anfang "gefiltert" .Wenn Sie fertig sind, können Sie das normale Verhalten wieder aufnehmen, indem Sie den gespeicherten Dateideskriptor wiederherstellen und den temporären schließen
quelle
less
oder ähnliche Tools verwenden, um das Scrollen der Ausgabe zu ermöglichen, wie zman
.Ich verstehe, dass diese Antwort für Sie nicht optimal ist, aber Sie könnten eine Bash-Funktion mit dem einfachen Namen
_
(oder etwas anderem, das noch nicht verwendet wird) erstellen, die den Befehl ausführt, den sie als Argumente erhält, und die gesamte Ausgabe mit einem Tabulator einrückt.Ein Beispiel:
Der Code dieser Funktion wäre nur:
Sie können es an Ihre
~/.bashrc
Datei anhängen, damit es in allen Bash-Sitzungen Ihres Benutzers verfügbar ist, indem Sie Folgendes ausführen:Wenn Sie es allen Benutzern zur Verfügung stellen möchten, fügen Sie es
/etc/bash.bashrc
stattdessen an (erfordert Administratorrechte):Alternativ können Sie auch eine Skriptdatei
/usr/local/bin/_
mit folgendem Inhalt erstellen , um dies auch ohne Bash-Funktionen und für alle Benutzer zu erreichen:Sie müssen das Skript nach dem Speichern der Datei mit ausführbar machen
quelle
Mit
echo
können Sie Backslash-Escapes wie\t
einen Tabulator mit dem-e
Schalter interpretieren lassen :Aber es wäre kaum machbar (oder wahrscheinlich möglich), die Ausgabe jedes Befehls auf diese Weise zu ändern. Wenn Sie das Lesen erleichtern möchten, sollten Sie das Aussehen (z. B. die Farbe) Ihrer Eingabeaufforderung wie folgt anpassen:
Sie können Ihre Eingabeaufforderung anpassen, indem Sie den Inhalt der Umgebungsvariablen ändern
PS1
. Ein kleines Beispiel dafür finden Sie im Blog-Beitrag, aus dem der obige Screenshot stammt. Die detaillierte Verwendung dieser sogenannten ANSI-Escape-Sequenzen, die Verwendung komfortablerer Tools, die Standardanwendung der Änderungen in neuen Terminals usw. sind nicht Gegenstand dieser Antwort. Wenn Sie sich jedoch für diese Technik entscheiden, finden Sie im Internet zahlreiche Tutorials und weitere Informationen.quelle