Probablemente haya sido respondida en alguna parte, pero es difícil formular la frase de búsqueda.
Estoy ejecutando una ventana de terminal bash y algunos comandos son demasiado grandes para caber en la página (p. ej. ps -A
)
Recuerdo vagamente un parámetro/método de línea de comando que muestra la salida del comando página por página para poder desplazarme por la salida, pero no recuerdo qué es... ¿algún consejo?
Respuesta1
Para los comandos que uso con frecuencia, generalmente configuro un function
en mi.bashrcpara hacerlos paginar si son más largos que una pantalla.
Como tu ejemplo: (ps -A)
function ps { command ps "$@" |& less -F; }
Esto se reemplaza ps
con una función, llamada ps
, que llama al comando original ps
con cualquier argumento dado en la línea de comando, luego canaliza la salida (stdoutystderr, usando la |&
tubería) en less -F
, que se detiene si hay más de una pantalla completa, pero sale inmediatamente si hay menos de una pantalla completa.
MUY útil, no interfiere con nada con lo que he trabajado hasta ahora y ¡es simplemente genial!
Incluso puedes agregar opciones de uso frecuente en el comando/funciones también:
function nm { command nm --demangle "$@" |& less -F; }
Esto hace que nm
siempre se exijan símbolos de C++. Ypagina la salida. ¡Hurra!
Estoy corriendoDebian, entonces uso el apt-cache
comando con bastante frecuencia,buscaryespectáculoprincipalmente. Esta función hace que esas opciones particulares se paginan,buscarla salida está ordenada y todo se pagina:
function apt-cache { case "$1" in "search") command apt-cache "$@" | sort | less -F;; *) command apt-cache "$@" | less -F;; esac; }
Si el comando es 'buscar', ordene la salida, luego paginar con less -F
, pero si el comando es cualquier otra cosa, simplemente paginar, sin ordenar.
De vez en cuando olvido que tengo las funciones y hago algo como:
apt-cache search gcc | less
La función no interfiere, todo funciona como se esperaba, no hay ningún daño de ninguna manera.
Otro pequeño ajuste, uso el mismo .bashrc
en todos mis sistemas, por lo que a veces es posible que una utilidad no esté instalada, por lo que no es necesaria la función. Los hago condicionales así:
which apt-cache &>/dev/null && function apt-cache { case "$1" in "search") command apt-cache "$@" |& sort | less -F;; *) command apt-cache "$@" |& less -F;; esac; }
Esto simplemente usa el which
comando para determinar si un programa está disponible; si no lo está, falla silenciosamente y omite la instalación de la función. ¡Taa Daa!
Respuesta2
El método normal es canalizar la salida a "menos".
ls -R / | less
qes la clave para salir, como una página de manual.
Si el comando puede producir errores u otros resultados en stderr, es posible que desees dirigirlo también a la tubería.
ls -R 2>&1 | less
Cualquier máquina que tenga bash debería tener menos también. En máquinas Linux antiguas, el programa eramás, pero eso hace sólo una página a la vez,menosle permitirá desplazarse como desee.
Respuesta3
Canalice la salida a 'más'
output | more -d
Enter - > Scroll by line
Space - > Scroll by Page
q - > Quit
Probado en sistema operativo basado en rpm.