Cómo usar el comando less en Linux

Un terminal Linux en un escritorio estilo Ubuntu.
Fatmawati Achmad Zaenuri / Shutterstock

El lesscomando le permite hojear un archivo de texto, mostrando una pantalla llena de texto cada vez. Parece uno de los comandos de Linux más simples a primera vista, pero hay mucho más en menos de lo que parece.

La historia de menos

Todo en Linux, y Unix, tiene una historia, sin juego de palabras. El lessprograma se basa en el moreprograma, que se lanzó inicialmente en 1978 en la versión 3.0 de Berkeley Software Distribution Unix (3.0BSD). morele permitía hojear progresivamente un archivo de texto, mostrando una pantalla llena de texto a la vez.

Siendo la necesidad la madre de la invención, fue la incapacidad de las primeras versiones de moredesplazarse hacia atrás a través de un archivo lo que llevó a Mark Nudelman a desarrollar lessy superar ese problema específico. Ese trabajo comenzó en 1983, y la primera versión se lanzó fuera de la empresa para la que trabajaba en 1985. A partir de octubre de 2019, todavía es el mantenedor de less.

Me pregunto si hay un usuario de Linux que no lo haya usado less. Incluso si no lo han usado para hojear un archivo de texto elegido, es probable que hayan usado el mancomando. Y manllama lessentre bastidores para mostrar las manpáginas.

Este es un comando con muchos trucos bajo la manga.

Por qué menos es mejor que más

lessse ha ido añadiendo de forma constante a lo largo de los años. Tiene una cantidad asombrosa de opciones de línea de comandos y pulsaciones de teclas de comandos en la aplicación. Haga una comparación rápida de la página de manual de less y la página de manual de more, y comenzará a ver cuán lessabsolutamente sobresale more.

moreha superado su falla inicial de no poder retroceder páginas a través del texto, sino solo para archivos. No puede paginar hacia atrás a través de la entrada canalizada. Puedes hacer eso con less.

Con su flexibilidad para navegar por archivos, ver varios archivos, buscar texto, soltar y volver a marcadores y lidiar con la entrada canalizada, lessgana sin lugar a dudas. Use en lesslugar de more.

Leer un archivo con menos

Para cargar un archivo en less, proporcione el nombre del archivo en la línea de comando:

menos Dr-Jekyll-y-Mr-Hyde-001.txt

menos Dr-Jekyll-and-Mr-Hyde-001.txt en una ventana de terminal

El archivo se carga y se muestra. La parte superior (o «inicio») del archivo se muestra en la ventana de terminal. Puede usar la rueda de desplazamiento de su mouse para desplazarse hacia adelante y hacia atrás a través del texto.

En el teclado, use la barra espaciadora o la tecla de avance de página para avanzar a través del texto una pantalla completa de texto a la vez.

Page Up se moverá hacia atrás a través del archivo (hacia el «inicio» del archivo). Las teclas Inicio y Fin lo llevarán directamente al inicio y al final del archivo de texto, respectivamente.

menos mostrar un archivo de texto en una ventana de terminal

El nombre del archivo se muestra en la esquina inferior izquierda de la pantalla. Cuando comienza a moverse en el archivo, la línea inferior se borra. Se utiliza para mostrarle mensajes y para que ingrese comandos.

Presione “q” para salir less.

Visualización de números de línea

Para tener las líneas del archivo de texto numeradas por usted, use la -Nopción (números de línea).

menos -N Dr-Jekyll-y-Mr-Hyde-001.txt

menos -N Dr-Jekyll-and-Mr-Hyde-001.txt en una ventana de terminal

Los números de línea pueden ser útiles para guiarlo de regreso a líneas o secciones específicas dentro de los archivos de registro y otros archivos que no están escritos en prosa estándar.

menos mostrar un archivo de texto con números de línea en una ventana de terminal

Buscando en menos

Para buscar en el texto del archivo, presione “/” y luego escriba su frase de búsqueda. La búsqueda distingue entre mayúsculas y minúsculas. Su frase de búsqueda se muestra en la línea inferior de la pantalla. Presione «Enter» para realizar la búsqueda.

En este ejemplo, el término de búsqueda es «Enfield» y se puede ver en la parte inferior de la pantalla.

Buscando "Enfield" en menos

La búsqueda se realiza desde la página actual hasta el final del archivo de texto. Para buscar en todo el archivo, vaya a la parte superior del archivo antes de buscar.

Se le informará si no hay coincidencias. Si se encuentra una coincidencia, la pantalla se mueve para mostrar el elemento encontrado.

menos mostrando un elemento de búsqueda coincidente

Para encontrar el siguiente elemento coincidente, presione «n». Para buscar el elemento coincidente anterior, presione «N».

menos con dos elementos de búsqueda coincidentes

Para buscar hacia atrás  desde su posición actual en el archivo hacia el inicio del archivo, presione el botón «?» y escriba su término de búsqueda. Para encontrar el siguiente elemento coincidente, presione «n». Para buscar el elemento coincidente anterior, presione «N».

Tenga en cuenta que, cuando busque hacia atrás, el siguiente elemento coincidente (que se encuentra con «n») es el siguiente más cercano a la parte superior del archivo, y la «N» del elemento coincidente anterior busca un elemento coincidente más cercano a la parte inferior del archivo. en otras palabras, “n” y “N” invierten su dirección de búsqueda cuando busca hacia atrás.

Abrir un archivo con un término de búsqueda

Puede utilizar la -popción (patrón) less para buscar en el archivo de texto y encontrar el primer elemento coincidente. Luego mostrará la página con el elemento de búsqueda correspondiente en ella, en lugar de la primera página del archivo. A menos que, por supuesto, el elemento de búsqueda se encuentre en la primera página del archivo.

Tenga en cuenta que no hay espacio entre -py el término de búsqueda.

menos -pEnfield Dr-Jekyll-y-Mr-Hyde-001.txt

menos -pEnfield Dr-Jekyll-y-Mr-Hyde-001.txt

El archivo se muestra con el primer término de búsqueda coincidente resaltado.

menos mostrar un archivo con el primer elemento de búsqueda coincidente resaltado

Navegar en menos: las teclas más útiles

Utilice estas teclas para moverse y buscar en el archivo de texto.

  • Mover hacia delante una línea : flecha hacia abajo, Entrar, E o J
  • Mover hacia atrás una línea : Flecha arriba, Y o K
  • Mover hacia delante una página : barra espaciadora o Av Pág
  • Mover hacia atrás una página : Pág o b
  • Desplácese hacia la derecha : flecha derecha
  • Desplazarse hacia la izquierda : Flecha izquierda
  • Ir a la parte superior del archivo: Inicio o g
  • Ir al final del archivo: Fin o G
  • Ir a una línea específica : escriba el número de línea y luego presione «g»
  • Ir a una forma de porcentaje a través del archivo: escriba el porcentaje y luego presione «p» o «%». (Incluso puede ingresar valores decimales, así que para saltar al punto 27.2 por ciento a través del archivo, escriba «27.2» y luego presione «p» o «%». ¿Por qué querría usar decimales? Honestamente, no tengo idea).
  • Búsqueda hacia adelante : presione «/» y escriba su búsqueda, como «/ Jekyll», y presione Entrar
  • Buscar hacia atrás : presione «?» y escriba su búsqueda, como «/ Hyde», y presione Entrar
  • Siguiente elemento de búsqueda coincidente : n
  • Elemento de búsqueda coincidente anterior : N
  • Salir : q

Apretar líneas en blanco

La -sopción (comprimir líneas en blanco) elimina una serie de líneas en blanco y las reemplaza con una sola línea en blanco.

Hay un par de líneas en blanco consecutivas en nuestro archivo de ejemplo, veamos cómo las lesstrata cuando usamos la -sopción:

menos -s Dr-Jekyll-y-Mr-Hyde-001.txt

menos -s Dr-Jekyll-and-Mr-Hyde-001.txt en una ventana de terminal

Todas las líneas en blanco dobles (o más) se han reemplazado por una sola línea en blanco en cada caso.

Menos sin secuencias de múltiples líneas en blanco que se muestran

Ver varios archivos

lesspuede abrir varios archivos por usted. Puede saltar de un archivo a otro. lessrecordará su posición en cada archivo.

menos Dr-Jekyll-y-Mr-Hyde-001.txt Dr-Jekyll-y-Mr-Hyde-002.txt

menos Dr-Jekyll-and-Mr-Hyde-001.txt Dr-Jekyll-and-Mr-Hyde-002.txt en una ventana de terminal

Los archivos se abren y se muestra el primer archivo. Se le muestra qué archivo está viendo y cuántos archivos se han cargado. Esto se destaca a continuación.

menos con dos archivos cargados

Para ver el siguiente archivo, presione “:” y luego presione “n”.

Su pantalla cambiará para mostrar el segundo archivo, y la información en la línea inferior se actualizará para mostrar que está viendo el segundo archivo. Esto se destaca a continuación.

viendo el segundo archivo en menos

Para ir al archivo anterior, escriba «:» y luego presione «p».

Usando marcas

lessle permite colocar un marcador para que pueda volver fácilmente a un pasaje marcado. Cada marcador está representado por una letra. Para colocar una marca en la línea que se muestra en la parte superior, presione «m» y luego presione la letra que desea usar, como «a».

Cuando presiona “m”, la línea inferior de la pantalla muestra un mensaje mientras espera que presione una tecla con letra.

menos pedir una marca

Tan pronto como presione una letra, se eliminará el mensaje.

Desde cualquier otra ubicación dentro del archivo, puede regresar fácilmente a una marca presionando el apóstrofo (o comilla simple) “’” y luego presionando la letra de la marca a la que desea regresar. Cuando presiona la tecla “’”, se le solicita la marca a la que desea ir.

menos pedir una marca para volver a

Presione la letra de la marca a la que desea regresar y se mostrará esa sección del archivo de texto.

menos volviendo a una marca

Usar entrada canalizada con menos

less puede mostrar información que viene como un flujo de texto canalizado, tan fácilmente como si fuera un archivo.

El dmesgcomando muestra los mensajes del búfer de anillo del kernel . Podemos canalizar la salida desde dmesg  dentro lesscon el siguiente comando:

dmesg | Menos

dmesg |  menos en una ventana de terminal

Se dmesgmuestra la salida de .

La salida de dmesg en menos

Puede paginar y buscar a través de la entrada canalizada como si fuera un archivo. Para ver los mensajes más recientes, presione «Finalizar» para ir al final del archivo.

Tme los mensajes dmesg más recientes al final del archivo en menos

A medida que llegan nuevos mensajes, debe seguir presionando «Fin» para forzar la lessvisualización de la parte inferior del archivo. Esto no es muy conveniente. Para lessmostrar siempre la parte inferior del texto, incluso cuando se agregan nuevos datos, use la +F opción (adelante). Tenga en cuenta el uso de + y no -como marca de opción.

dmesg | menos + F

dmesg |  menos + F en una ventana de terminal

El +indicador de opción le dice lessque trate la opción como si hubiera usado ese comando adentro less . Entonces, si olvidó usar la +Fopción, presione «F» adentro less.

menos esperando nuevas aportaciones de dmesg

lessmuestra la parte inferior del texto, que muestra los mensajes más recientes de dmesg. Muestra un mensaje de que está esperando más datos. Cuando aparecen más mensajes del kernel, la pantalla se desplaza para que siempre pueda ver los mensajes más recientes.

No puedes desplazarte o paginar en este modo; se dedica a mostrar la parte inferior del texto canalizado. Para salir de este modo, presione Ctrl + c, y volverá al lessmodo interactivo habitual .

Editar archivos con menos

Puede editar archivos con less—bueno, más o menos. Este comando no puede editar archivos, pero si escribe «v» cuando está viendo un archivo, el archivo se transfiere a su editor predeterminado. Cuando deja el editor, vuelve a less.

Presione «v» cuando vea un archivo en less:

archivo mostrado en menos

El archivo se carga en el editor predeterminado, en este caso nano:

archivo cargado en el editor nano

Cuando cierra el editor, se vuelve a less.

En resumen

Por contradictorio que parezca, en este caso less> more.