¿Cómo leer hacia atrás desde el final del archivo en menos o más?

169

He encontrado una forma hasta ahora: menos nombre de archivo + G, pero se desplaza hacia arriba solo con la tecla hacia arriba línea por línea. ¿Qué es más poderoso, menos usos que proporcionan desplazamiento por página, búsqueda de patrones hacia atrás y así sucesivamente?

yetanothercoder
fuente

Respuestas:

225

Estoy seguro de que alguien tiene una mejor respuesta, pero

Con "menos" después de haber abierto el archivo:

G goes to the bottom of the file

^b goes up one page

? searches backwards.

Como dijiste, puedes abrir el archivo con + G y luego usar? y ^ b para desplazarse hacia arriba. Probablemente hay cosas inteligentes que puedes hacer para lograr lo mismo en un script.

Chris
fuente
3
Ctrl-b funciona, pero b (por sí mismo) también lo hace.
Dennis Williamson
¡Uy! Estoy tan condicionado para usar las teclas vi que también las uso en menos. Sí, b te mueve una página hacia arriba en menos, pero solo hacia atrás una palabra a la vez en vi. Estoy impaciente; Quiero una página a la vez, y mi cerebro del tamaño de una nuez no puede recordar si estoy en vi o menos a veces ...
Chris
2
menos tu archivo, luego escribe 'h' => obtienes un buen manual por operación. Muy ordenado, sin necesidad de guías externas o la página de manual de la OMI.
Kharski
66
de hecho, ? = shift + /, /es la búsqueda hacia delante.
HongboZhu
De hecho, Shift + Gva al final del archivo
Alex78191
82

Para variar, si realmente quiere / necesita leer un archivo al revés (última línea primero):

tac filename | less
Dennis Williamson
fuente
1
Eso es principalmente un linux / gnuism ...
chris
55
Dato taccat
curioso
77
Este era el nombre de mi gato de la infancia. No creo que me haya dado cuenta de por qué hasta ahora.
vaughan
¿Alguien ha oído hablar de ztacarchivos comprimidos (es decir, zcatpero al revés)?
irbanana
1
@irbanana: Una forma . Pero no ahorra tiempo en archivos grandes porque todo el archivo debe descomprimirse.
Dennis Williamson
7

wsube por página ?hace la búsqueda inversa. htrae ayuda en línea.

Ignacio Vazquez-Abrams
fuente
4

cola -r | Menos

No sé por qué nadie pensó en este. Tail toma el final de un archivo realmente fácil. ¿No es -r una opción común?

Crissa Kentavr
fuente
Usando tail (GNU coreutils) 8.13 en Ubuntu 12.02 aquí. No hay tal opción como -r.
JHH
Creo que tail -res una cosa BSD / macOS, esos entornos no tienen tac.
fzzfzzfzz
4

utilizar:

less +F /path/to/your/file

eso es menos pero comienza desde abajo. Use la tecla de flecha hacia arriba para retroceder línea por línea o ctl + b para ir página por página.

Ruben Estrada
fuente
44
Esto no solo va al final del archivo, sino que espera una salida adicional al final, como tail -f. Si esto no es lo que quieres, deberías usarlo +G.
Michael Hampton
tienes razón @MichaelHampton
Ruben Estrada
2

Me sorprende que nadie haya mencionado esto antes, pero:

?patternbusca el patrón al revés.

N encuentra la coincidencia anterior del patrón (es decir, buscando hacia atrás).

Como referencia, /patternbusca el patrón hacia adelante y nencuentra la siguiente coincidencia del patrón. Así es como se usa comúnmente la búsqueda.

dr01
fuente
2

Mientras usa moreo journalctl -xeusa la barra espaciadora, le lleva 1 página hacia abajo. Eso funcionó para mí. Espero que esto ayude.

Shubham Singh
fuente
1

Otra alternativa, después de haber comenzado menos en un archivo:

alt + "tecla final"

Con "tecla de finalización" me refiero a la tecla que generalmente se encuentra debajo de la "tecla de inicio" en un teclado.

ria
fuente
-1

Si está buscando algo específico, esto podría hacerlo:

cat yourfile.txt | grep "something specific" | less

Lo uso para buscar archivos de registro. Sin embargo, todavía está en el orden 'incorrecto', pero mucho más corto.

Después de leer la respuesta de Dennis Williamson, ese es mi nuevo método =)

Rudie
fuente
No necesito catcon grep-grep $StRING $FILENAME | less
Lee Gee
Imho, esa es una pregunta absolutamente diferente.
Yaroslav Nikitenko el
-1

Quizás algunas personas no entendieron lo que significaba dr01 . Trato de ponerlo en otras palabras.

  • Abre el archivo en menos
  • Búsqueda hacia adelante: ingrese la clave /
  • Búsqueda hacia atrás: introduzca la clave?
  • Para los dos anteriores: ingrese su término de búsqueda ahora
  • Presione enter
  • Presione n para buscar el siguiente hallazgo
  • Presione N para buscar el hallazgo anterior
keocra
fuente