Con relativa frecuencia, me encuentro con ganas de dejar de fumar, lesspero dejar lo que estaba viendo en la pantalla, para consultar. ¿Hay alguna forma de hacer esto? Soluciones alternativas?
(Mi solución actual es dejar de fumar y luego usar more. Por lo tanto, cualquier solución que sea mejor que eso es bienvenida. Lo ideal sería algo que pueda usar una vez que ya esté dentro less, tal vez con una configuración de shell o alguna secuencia de comandos).
Mi escritorio es OSX, pero uso los servidores RHEL y Ubuntu.

git diffogit log) enless -Xtomará el búfer de desplazamiento en mi terminal y desalojará gran parte de la salida anterior. Me encantaría silesspudiera salir con la última pantalla llena de salida en el momento de la salida; es decir, no se tomará más de una página del búfer de desplazamiento después de salirless. ¿Algunas ideas?-Rsuele ser una opción más segura que-r.-R is "Like -r, but only ANSI "color" escape sequences are output in "raw" form. Unlike -r, the screen appearance is maintained correctly in most cases."-cse trata de cómo actualizar la pantalla cuando te mueves dentroless.Respuestas:
Esta es en realidad una función del emulador de terminal que está utilizando (xterm, gnome-terminal, konsole, screen). Una pantalla alternativa, o altscreen, se inicia cuando se invocan programas como
lessovim. Esta pantalla alternativa no tiene búfer de historial y se cierra inmediatamente cuando sale del programa, volviendo a la pantalla original que restaura el historial y la ubicación del contenido de la ventana anterior.Puede evitar que se
lessinicie en una pantalla alternativa pasando el argumento "-X".less -X /path/to/some/fileTambién puede pasar "-X" como variable de entorno. Entonces, si está utilizando
bash, coloque esto en~/.bashrc:Sin embargo, esto deshabilita la inicialización y la desinicialización de termcap (capacidad de terminal), por lo que
lesspueden aparecer otras vistas cuando se usa .Otra opción sería usar
screeny configurar la opciónaltscreen offen su~/.screenrc.lessno borrará la pantalla y debería conservar el formato de color. Presumiblementetmuxtendrá la misma opción.Esta entrada del blog describe el problema y ofrece algunas soluciones diferentes específicas para cada
gnome-terminaléxito.fuente
git log(y probablemente otros comandos de colores) está en mal estado.alias les="/usr/bin/less -X"git logcuestión anterior:export LESS="-r -X". (No tengo idea de cuáles son los efectos secundarios de eso ...)gitestablece laLESSvariable enFRSXsi no está establecida cuando ejecuta el buscapersonas, por lo que puede dejarla sin establecerLESSylessse ejecutará automáticamente con-FRSX. Busquecore.pageradentrogit-config(1)para más información.La solución de George no funcionó para mí, pero esta solución sí (de la entrada del blog vinculada en su respuesta).
$ infocmp -I xterm > ~/xterm-noclear.srcEditar ~ / xterm-noclear.src
cambie el nombre en la segunda línea de 'xterm' a 'xterm-noclear', o lo que le convenga (también cambie 'xterm-debian' si está presente)
elimine las instrucciones 'smcup' y 'rmcup' (por ejemplo, "smcup = \ E [? 1049h," y "rmcup = \ E [? 1049l,")
$ mkdir ~/.terminfo$ tic ~/xterm-noclear.src(x / xterm-noclear debería aparecer en su directorio ~ / .terminfo)$ export TERM=xterm-noclear(ahora verifique el comportamiento de less y, si está satisfecho, agregue la línea de directiva de exportación a su ~ / .profile)(Copié estas instrucciones directamente de la edición rechazada de @ jah de la respuesta de George).
fuente
La forma en que recuerdo esto es
less -SEXcuando necesito volcar la salida a la pantalla pero no quiero que las líneas se ajusten. Por ejemplo,docker ps | less -SEXlo que hace es esto:-S-E, puede usar las teclas de flecha para desplazarse-E-XSi no puedes recordar
less -SEX, no hay mucha esperanza para ti. Simplemente vuelve a google cada vez que supongo.fuente