GNU/Linux >> Tutoriels Linux >  >> Linux

commandes bash qui ne tiennent pas sur une seule page - rendent la sortie défilante

Pour les commandes que j'utilise souvent, je configure généralement un function dans mon .bashrc pour les faire paginer si plus long qu'un écran.

Comme votre exemple :(ps -A)

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

Ceci remplace ps avec une fonction nommée ps , qui appelle le ps d'origine commande avec les arguments donnés sur la ligne de commande, puis redirige la sortie (stdout et stderr, en utilisant le |& tuyau) en less -F , qui s'interrompt s'il y a plus d'un écran plein, mais se ferme immédiatement s'il y a moins d'un écran plein.

TRÈS pratique, n'interfère pas avec tout ce avec quoi j'ai travaillé jusqu'à présent, et c'est juste cool !

Vous pouvez même ajouter des options souvent utilisées dans les commandes/fonctions :

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

Cela fait nm démêlez toujours les symboles C++. ET pagine la sortie. Youpi !

J'utilise Debian , donc j'utilise le apt-cache commande assez souvent, recherche et afficher la plupart. Cette fonction entraîne la pagination de ces options particulières, la recherche la sortie est triée et tout est paginé :

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

Si la commande est 'search', triez la sortie, puis paginez avec less -F , mais si la commande est autre chose, il suffit de paginer, sans trier.

De temps en temps, j'oublie que j'ai les fonctions, et je fais quelque chose comme :

apt-cache search gcc | less

La fonction n'interfère pas, tout fonctionne comme prévu, aucun mal de toute façon.

Un autre petit ajustement, j'utilise le même .bashrc sur tous mes systèmes, donc parfois un utilitaire peut ne pas être installé, donc la fonction n'est pas nécessaire. Je les rends conditionnels comme ceci :

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; }

Cela utilise juste le which commande pour déterminer si un programme est disponible, si ce n'est pas le cas, il échoue discrètement et ignore l'installation de la fonction. Taa Daa !


La méthode normale consiste à rediriger la sortie vers "moins".

ls -R / | less

q est la clé pour quitter, tout comme une page de manuel.

Si la commande peut produire des erreurs ou d'autres sorties vers stderr, vous pouvez également les diriger vers le tube.

ls -R 2>&1 | less

Toute machine qui a bash devrait aussi en avoir moins. Sur les anciennes machines Linux, le programme était plus , mais cela ne fait qu'une page à la fois, moins vous permettra de faire défiler comme vous le souhaitez.


Linux
  1. Commandes couplées avec des opérateurs de contrôle dans Bash

  2. 8 commandes effrayantes qui hantent le terminal

  3. 15 commandes intégrées utiles de Bash Shell (avec exemples)

  4. Comment faire fonctionner la commande alias dans un script bash ou un fichier bashrc

  5. Diviser la sortie de la commande par colonnes à l'aide de Bash ?

Comment exécuter des commandes Shell via un serveur HTTP

Comment corriger facilement les commandes Bash mal orthographiées sous Linux

Comment exécuter plusieurs commandes Linux en une seule commande

Comment mapper une commande Vim pour exécuter des commandes Bash basées sur OS ?

Explication des commandes Apt vs Apt-get :laquelle utiliser ?

Sortie détaillée de la commande Bash find