37 votos

Cómo desplazarse hacia arriba en la ventana de la terminal mientras se genera una nueva entrada sin ser lanzado de nuevo al fondo (Linux)

En Ubuntu, quiero desplazarme hacia arriba mientras un comando se ejecuta en la ventana de mi terminal y genera una nueva salida (en realidad el comando que se ejecuta es rspec). Puedo desplazarme hacia arriba, pero cada vez que rspec genera una nueva línea de salida de la consola me lanza de nuevo hacia abajo. ¿Hay alguna forma de desplazarse hacia arriba? Estoy usando Terminator en Linux Mint/Ubuntu 12.04 LTS

ACTUALIZACIÓN

Encontré una posible solución Página principal de Terminator dice que con

stty ixon

puedes activar el control de flujo XON/XOFF para la salida del terminal. Ser capaz de pausar la salida escribiendo ^S y reanudarla escribiendo ^Q [...]"

Esto no es totalmente lo que quería, sin embargo, sin tener que detener la salida (y tal vez preguntándome cuando olvidé encenderla de nuevo), pensé que podría haber una simple tecla modificadora como shft-alt con la rueda del ratón desplazándose hacia arriba ¿Alguna solución mejor?

54voto

Chikitulfo Puntos 376

Aunque estoy un poco atrasado, estoy publicando esto aquí para que cualquiera que venga aquí tenga una solución. Para mí, la solución al mismo problema fue:

Preferencias de Terminator -> Pestaña de Perfiles -> Desplazamiento [sub]pestaña -> Desmarcar la opción 'Desplazamiento en la salida'.

Lo bueno de esta opción, es que seguirá desplazándose en la salida cuando estés en la parte inferior de la misma, pero tan pronto como te desplaces hacia arriba, se detendrá y no te molestará incluso si el contenido de la salida sigue generándose.

Espero que esto ayude

2voto

user63898 Puntos 6258

tail -f log.txt | less se actualizará para avanzar a la nueva información, y entonces podrás subir o bajar. También puedes usar less y otras características de búsqueda, etcétera. Con el método del tubo, también puedes analizar la salida en movimiento.

Y la misma idea, pero sin la pipa: less +F log.txt .
(Esto asume que puedes trabajar con tu contenido de esta manera.)

La vieja forma de Unix era pulsar Ctrl-S en tu terminal para detenerte, y Ctrl-Q para reiniciar el desplazamiento de salida esto es básicamente lo que Terminator te permite hacer con stty ixon .
Con las barras de desplazamiento añadidas, esto me parece bastante decente: pulsa Control-S, sube a lo que quieras, y luego Control-Q para volver a bajar. Sí, de vez en cuando te olvidarás de desactivar la salida.

Porque soy excepcionalmente perezoso, y porque me gusta la flexibilidad de la redirección de la salida, usaría la cola -f con el tubo (asumiendo que se ajusta al caso) . Entonces puedo detenerlo, flechar y agregar algo como un grep, y aún así funciona: tail -f tac_plus.log | less | egrep 'peerip'

Lanza un poco cat s y tee ahí dentro y tienes una fiesta de verdad.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: