GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Bash-Befehle, die nicht auf eine Seite passen - Ausgabe scrollbar machen

Für Befehle, die ich häufig verwende, richte ich im Allgemeinen einen function ein in meiner .bashrc um sie paginieren zu lassen, wenn sie länger als ein Bildschirm sind.

Wie Ihr Beispiel:(ps -A)

function ps { command ps "[email protected]" |& less -F; }

Dies ersetzt ps mit einer Funktion namens ps , die den ursprünglichen ps aufruft Befehl mit den in der Befehlszeile angegebenen Argumenten und leitet dann die Ausgabe weiter (stdout und stderr mit |& Pipe) in less -F , die pausiert, wenn mehr als ein Bildschirm voll ist, aber sofort beendet wird, wenn weniger als ein Bildschirm voll ist.

SEHR praktisch, stört nichts, womit ich bisher gearbeitet habe, und ist einfach cool!

Sie können den Befehlen/Funktionen sogar häufig verwendete Optionen hinzufügen:

function nm { command nm --demangle "[email protected]" |& less -F; }

Das macht nm C++-Symbole immer demanglen. UND paginiert die Ausgabe. Juhu!

Ich verwende Debian , also verwende ich den apt-cache Befehl ziemlich oft, Suche und zeigen meist. Diese Funktion bewirkt, dass diese bestimmten Optionen paginieren, suchen Die Ausgabe ist sortiert und alles paginiert:

function apt-cache { case  "$1" in "search") command apt-cache "[email protected]" | sort | less -F;; *) command apt-cache "[email protected]" | less -F;; esac; }

Wenn der Befehl „search“ lautet, sortieren Sie die Ausgabe und paginieren Sie dann mit less -F , aber wenn Befehl etwas anderes ist, einfach paginieren, ohne zu sortieren.

Gelegentlich vergesse ich, dass ich die Funktionen habe, und mache so etwas wie:

apt-cache search gcc | less

Die Funktion stört nicht, alles funktioniert wie erwartet, schadet so oder so nicht.

Eine weitere kleine Änderung, ich verwende dasselbe .bashrc auf allen meinen Systemen, daher ist manchmal ein Dienstprogramm möglicherweise nicht installiert, sodass die Funktion nicht benötigt wird. Ich mache sie wie folgt bedingt:

which apt-cache &>/dev/null && function apt-cache { case  "$1" in "search") command apt-cache "[email protected]" |& sort | less -F;; *) command apt-cache "[email protected]" |& less -F;; esac; }

Dies verwendet nur den which Befehl, um festzustellen, ob ein Programm verfügbar ist, schlägt es stillschweigend fehl und überspringt die Installation der Funktion. Taa Daa!


Die normale Methode besteht darin, die Ausgabe an "less" weiterzuleiten.

ls -R / | less

q ist der Schlüssel zum Beenden, genau wie eine Manpage.

Wenn der Befehl möglicherweise Fehler oder andere Ausgaben an stderr erzeugt, möchten Sie diese möglicherweise auch an die Pipe leiten.

ls -R 2>&1 | less

Jede Maschine, die Bash hat, sollte auch weniger haben. Auf alten Linux-Rechnern war das Programm more , aber das macht jeweils nur eine Seite, weniger können Sie nach Belieben scrollen.


Linux
  1. Wie übergibt man die Ausgabe eines Befehls als Argument an einen anderen?

  2. Wie ordnet man einen Vim-Befehl zu, um Bash-Befehle basierend auf Os auszuführen?

  3. So verwenden Sie Cat, Tac, More, Less – Linux-Befehle

  4. Wie man den Alias-Befehl in einem Bash-Skript oder einer Bashrc-Datei zum Laufen bringt

  5. Ausgabe des Befehls nach Spalten mit Bash aufteilen?

8 gruselige Befehle, die das Terminal heimsuchen

So führen Sie Shell-Befehle über einen HTTP-Server aus

So korrigieren Sie einfach falsch geschriebene Bash-Befehle in Linux

So führen Sie mehrere Linux-Befehle in einem einzigen Befehl aus

Apt vs. Apt-get-Befehle erklärt:Welchen verwenden?

bash - make-Befehl nicht gefunden