Ventanas.  virus  Cuadernos.  Internet.  oficina.  Utilidades.  Conductores

161 jane doh

Entiendo que Arriba/Abajo le dará el historial de comandos. Pero, ¿cómo mira los resultados anteriores desplazándose hacia arriba y hacia abajo?

He usado Shift + Page Up / Page Down , Alt + Shift + Up / Down y Page Up / Page Down , pero ninguno de estos parece funcionar.

Esta es la caja de Redhat Linux.

linux terminal rhel

14 respuestas

MAYÚS + Re Pág y MAYÚS + Av Pág. Si eso no funciona, intente esto y luego debería:

Vaya a su programa de terminal y asegúrese de Editar/Preferencias de perfil/Desplazamiento/Desplazamiento hacia atrás/Ilimitado
comprobado.

La ubicación exacta de esta opción puede estar en otro lugar, pero veo que está usando Redhat.

SHIFT+Page Up y SHIFT+Page Down son las teclas correctas para trabajar en la consola virtual, pero la consola vmware no tiene esa configuración de terminal. La consola virtual tiene un tamaño de desplazamiento hacia atrás fijo, parece que está limitado por el tamaño de la memoria de video de acuerdo con este virtual consola linux Desplácese por la documentación.

ALTERNATIVA PARA EL PROCESAMIENTO LÍNEA A LÍNEA

Ctrl + Mayús + Flecha arriba o Flecha abajo

A diferencia de Shift + Page Up o Page Down , que desplaza toda la página, esto ayudará con el desplazamiento lineal suave, que es exactamente lo que estaba buscando.

Otra alternativa que puede que ya esté instalada en tu sistema es usar GNU shield:

# Esta pantalla de inicio que agrega la gestión básica de ventanas en la pantalla de terminales # Esto inicia el modo de copia puede usar para desplazarse [ # Ahora use las flechas para desplazarse # Para salir del modo de copia, haga

Vea la pantalla man para más opciones útiles (múltiples ventanas,...)...

No parece ser posible fácilmente: Arch Linux Wiki no enumera formas de hacer esto en una consola (aunque es fácilmente posible en una terminal virtual).

Ctrl - b , luego [ , luego puede usar las teclas de navegación normales para desplazarse (como Flecha arriba o AvPág). Presione q para salir del modo de desplazamiento.


Traducción libre: Alexey Dmitriev
Fecha de transferencia 19 de noviembre de 2007

Aquí estamos hablando de la consola de texto de GNU/Linux, no de lo que aparece en la ventana del terminal, o Administrador de ventanas X o escritorio. Hay tanta confusión sobre esto que tengo que decir trivialmente: - "Si presiona "Alt-Ctrl-F1" (o "F2", etc.) mientras está en modo gráfico, entonces ingresa a la consola de texto".

0. ¿De qué se trata?

La computadora se está cargando. Está en una consola de texto y ve cómo el texto se desplaza hacia abajo rápidamente. Desea ver una parte de este texto que ya pasó. Presiona "Shift-PgUp" o "Shift-PgDn", y si ya ha cambiado los métodos abreviados de teclado predeterminados (no, no, no el diseño del teclado X), entonces algunas otras teclas. Con estas teclas haces que el texto se desplace hacia arriba y hacia abajo en la pantalla. EN este momento está utilizando un búfer de desplazamiento hacia atrás (llamémoslo búfer de desplazamiento hacia atrás para abreviar).

Cuando comienza a usar este búfer con might y main, dos cosas quedan claras muy pronto:
Solo se puede devolver una parte del texto que acompaña a la descarga.
El archivo "/var/log/messages" captura mucho menos de lo que querías ver.

Comienzas a buscar en la web y pronto aparecen los resultados preliminares: las publicaciones en scrollback en Linux son muy antiguas y se remontan a principios de los 90. Sin embargo, todo lo anterior al kernel 2.6.x debe olvidarse.

De hecho, debe ser selectivo con lo que lee: es probable que la mayoría de los consejos que se aplican a las versiones anteriores a la 2.6.x lo confundan y lo desvíen. Confía en mí, he perdido mucho tiempo en este caso. El comportamiento de desplazamiento hacia atrás se define en el archivo "vc.c", un archivo pequeño en las fuentes del kernel, donde "vc" significa "consola virtual".

Tenga en cuenta que al cambiar de consola, el búfer de desplazamiento se pierde, por lo que la cantidad total de este búfer está disponible en la consola actual. (Aquí hay especialmente mucha basura de información anterior al kernel 2.6.x).

De forma predeterminada, el tamaño del búfer es de 32 K. Esto es suficiente para 4 pulsaciones de la tecla de desplazamiento inverso: cada pulsación desplaza la mitad de la pantalla, 25 líneas por pantalla. Sale a unas 50 líneas. Y no obtendrá más, incluso si tiene 30 o 50 líneas por pantalla. Debo decir que 50 líneas es una pequeña fracción de lo que vuela por la pantalla durante la carga. En relación con lo anterior, surgen dos interrogantes:

¿Cómo aumentar el búfer de desplazamiento?

¿Por qué los registros no capturan algunos de los mensajes que vio durante la descarga?

1. ¿Cómo aumentar el búfer de desplazamiento hacia atrás?

La primera solución es aumentar el tamaño del búfer predeterminado (predeterminado) en las fuentes del kernel y volver a compilarlo. Déjame suponer que eres tan reacio a hacer esto como yo y buscas un medio más flexible.

Y existe tal herramienta, pero se llama "consola de framebuffer", para abreviar "fbcon". Este dispositivo tiene un archivo de documentación "fbcon.txt"; si instaló la documentación para el kernel, entonces la tiene. Búsquelo en algún lugar de la rama "/usr/share" (no puedo dar la ruta exacta debido a las diferencias de distribución). Siempre puede descargarlo como un solo archivo.

En este punto, pido disculpas: tenemos que desviarnos un poco y hablar un poco sobre el framebuffer.

El búfer de video es un búfer entre la pantalla y el adaptador de video. Su belleza es que se puede manipular: permite trucos que no funcionarían si el adaptador estuviera conectado directamente a la pantalla.

Uno de esos trucos está relacionado con el búfer de desplazamiento; resulta que puede "pedir" al búfer de video que asigne más memoria al búfer de desplazamiento. Esto se logra a través de los parámetros de arranque del kernel. Primero necesita un framebuffer (búfer de video); Luego solicita un búfer de desplazamiento más grande.

El siguiente ejemplo es para GRUB pero se puede adaptar fácilmente a LILO. En archivo Configuración de GRUB- "menu.lst" - busque la línea correspondiente al kernel y luego:
Quite la opción "vga=xxx" si está presente.
Agregue la opción "video=vesabf" o lo que coincida con su hardware.
Agrega la opción "fbcon=scrollback:128".
Después de este procedimiento, la línea de parámetros del kernel debería verse así:
"kernel /vmlinuz root=/dev/sdb5 video=radeonfb fbcon=scrollback:128".

La pregunta es, ¿por qué eliminar la opción "vga=xxx"? Por posibles conflictos con la opción de vídeo. En mi adaptador ATI, no puedo cambiar el búfer de desplazamiento si aparece "vga=xxx". Quizás en tu caso no sea así. Si las opciones anteriores funcionan, bien; pero, ¿qué sucede si desea aumentar el número de líneas o establecer una fuente más pequeña en la pantalla? Siempre lo hiciste con la opción "vga=xxx", y eso es lo que desapareció. No se preocupe: se puede lograr lo mismo cambiando los parámetros de fbcon como se describe en el archivo "fbcon.txt" (pero no se describe en este artículo). Ubuntu y Debian tienen más manera conveniente: "dpkg-reconfigure consola-configuración". También vale la pena usar este comando porque también actualiza "initrd" a su nueva configuración.

2. Empujando los límites

La opción "fbcon=scrollback:128" le permite navegar por el búfer de desplazamiento hacia atrás de 12 a 13 pantallas. Eso es alrededor de 150 líneas, no está mal, pero probablemente no sea suficiente para ver todos los mensajes de arranque. ¿Es posible apostar más de 128, digamos 256? El límite de 128 está en "vc.c". Si quieres más, edita y compila. Por mí mismo, decidí que el juego no vale la pena.

Justo cuando decidí que había alcanzado el límite más alto, cito de "fbcon.txt":
fbcon=desplazamiento hacia atrás: [k]
...
El sufijo "k" es opcional y multiplicará el "valor" por 1024.
(El sufijo "k" es opcional, y multiplicará "valor" por 1024 veces).
Me apresuré a verificar ... y no importa lo que el autor pensara sobre esto, estaba convencido de que 128 y 128k dan exactamente el mismo resultado. El límite predeterminado es de 128 KB de memoria, esa es toda la historia.

Por último, tenga en cuenta que el uso del búfer de desplazamiento extendido utiliza tanto la memoria del adaptador de gráficos como un búfer en memoria de acceso aleatorio. Si está satisfecho con los 32 KB predeterminados, solo está usando la memoria del adaptador de video. En la práctica, sin embargo, no noté la menor desaceleración.

3. ¿Qué falta en los registros?

En Ubuntu y Debian y otras distribuciones, todos los mensajes del sistema se almacenan en el archivo "/var/log/messages". Esto se aplica incluso si el demonio de registro no es el antiguo "syslog" sino "syslog-ng" ("ng": "nueva generación").

En ambos casos, puede ver los mensajes escribiendo "dmesg" en la línea de comando. No ayuda: vio claramente mensajes durante la carga que no están en la salida del comando "dmesg". ¿Cómo es eso?

¡Esto es una característica, no un error! Los mensajes registrados en el archivo provienen de varios subsistemas del sistema operativo. Los subsistemas que emiten mensajes al archivo de registro se denominan en la terminología de syslog "instalaciones" ("medios" o "servicios"), solo hay 8 de ellos. Durante el proceso de descarga, funcionan programas y scripts que pueden no pertenecer a ninguna de las 8 "herramientas". Vemos que sus mensajes se desplazan por la pantalla, ¡pero no se registrará nada en el archivo de registro!

Por ejemplo, no verá mensajes de los programas "loadkeys" (openSUSE) o "consolechars" (Ubuntu y Debian) al cargar un diseño de teclado durante el arranque del sistema. Otro ejemplo: al usar la consola editor de texto, puede desplazar la pantalla hacia atrás (incluidos los colores) mientras usa el búfer de desplazamiento. Pero lo que produce el editor nunca entrará en ningún protocolo del sistema. La razón, por supuesto, es que ni "loadkeys", ni "consolechars", ni el editor pertenecen a ninguna de las 8 "herramientas".

¿Es posible cambiar la situación? Por supuesto, "simplemente" rehaga y vuelva a compilar las aplicaciones que desea registrar. Agregue o reescriba scripts de arranque. O haga que el sistema capture mensajes desde fuera de las 8 "herramientas" del sistema.

Apuesto a que no lo harás. Y hasta sé tu probable respuesta:
"No falta nada en mis registros". Sí, claro...

Si te ha gustado este artículo, compártelo con tus amigos:

El tema de los métodos útiles de trabajo en terminal linux inagotable. Parecería que todo está organizado de manera muy simple: un indicador de shell y comandos ingresados ​​​​desde el teclado. Sin embargo, en esta simplicidad yace un abismo de posibilidades no obvias, pero útiles. Es por eso que publicamos regularmente materiales sobre las características de trabajar en la línea de comandos de Linux. En particular, hoy será una traducción de un artículo cuyo autor es un apasionado de ahorrar tiempo a través del aumento de la productividad.

Si está interesado en trabajar en la línea de comandos de Linux, estos son algunos de nuestros materiales sobre este tema:

  • [ +114 ] Técnicas de línea de comandos de Linux más útiles
  • [ +70 ] 10 trucos de terminal de Linux que pocas personas conocen
  • [+65 ] Herramienta sorprendentemente útil: lsof
  • [ +32 ] Linux: redirigir
  • [ +29 ] Versión PDF de artículos sobre scripts Bash

Trucos de línea de comandos de Linux y ahorro de tiempo

¿Alguna vez ha visto a un colega usar algún simple comandos de linux para resolver problemas que te toman varias líneas para resolver? Debe ser que cuando sucedió algo así, todo lo que podías decirte a ti mismo era: “¡Guau! No sabía que se podía hacer tan fácilmente".

En este artículo, le mostraré algunos trucos profesionales de la línea de comandos de Linux que le ahorrarán mucho tiempo y, en algunos casos, le quitarán el mal humor. No solo eso, tus amigos o compañeros dirán: “¡Vaya, guau!”, mirándote. Estos trucos también te ayudarán a aumentar tu productividad personal, ya que necesitarás escribir menos comandos e incluso hacer menos clics con el mouse.

Esto no quiere decir que estos consejos de Linux sean solo para principiantes. Es muy posible que incluso Usuarios avanzados encontrar algo útil aquí que no sabían a pesar de haber usado Linux durante muchos años. Linux se aprende con la experiencia. Aquí es donde entra en juego tu propia experiencia y la experiencia de otras personas.

Antes de comenzar, me gustaría señalar que algunos de los métodos presentados aquí dependen de la configuración del shell.

0. Comandos de Autocompletar usando la tecla Tabulador

Comenzaré con algo muy obvio, pero muy importante: comandos de autocompletar usando la tecla Tabulador.

Cuando comience a escribir en la terminal de Linux, puede presionar la tecla Tab, que abrirá una información sobre herramientas que contiene un conjunto de opciones para continuar escribiendo, comenzando con los caracteres que acaba de escribir.

Por ejemplo, si va a copiar un archivo llamado my_best_file_1.txt, puede simplemente escribir cp m y presionar Tab para ver opciones posibles continuación del comando.


Uso de la tecla Tab para completar automáticamente la entrada

La tecla Tab también se puede usar para completar automáticamente los comandos.

1. Cambiar al último directorio de trabajo

Imagine que estaba trabajando en un directorio al que no es tan fácil acceder y luego se trasladó a otro directorio ubicado en un lugar completamente diferente. Entonces te diste cuenta de que necesitas volver al directorio anterior. En este caso, simplemente use el siguiente comando:

CD-
Le permitirá estar en el último directorio de trabajo. Ahora, en situaciones como esta, ya no necesita ingresar rutas largas o copiar y pegar.


Fácil cambio entre directorios

2. Volver al directorio de inicio

Este enfoque también es muy obvio. Puede utilizar el siguiente comando para volver a su directorio de inicio desde cualquier lugar:

disco compacto
Sin embargo, puede volver a su directorio de inicio aún más rápido con el comando cd.

En la mayoría de las distribuciones modernas de Linux, el shell está preconfigurado para tratar el comando cd de esta manera. Esto le ahorrará un par de pulsaciones de teclas en su teclado.


Mayoría manera rápida cambiar al directorio de inicio

3. Visualización del contenido de un directorio

Quizás se pregunte cuál es la sutileza de usar un comando para enumerar el contenido de un directorio. Todo el mundo sabe que el comando ls -l sirve para este propósito.

Pero ese es el punto. Casi todo el mundo usa el comando ls -l para enumerar el contenido de los directorios, mientras que lo mismo se puede hacer con el siguiente comando:

ll
La funcionalidad de este comando depende de la distribución de Linux y de la configuración de su shell, pero es muy probable que pueda usarlo en la mayoría de las distribuciones.


Usar el comando ll en lugar del comando ls -l

4. Llamar a múltiples comandos en una línea

Imagine que necesita ejecutar varios comandos en secuencia. Probablemente, ingrese un comando, luego espere a que se complete y luego ingrese el siguiente.

En tal situación, será útil un separador de comandos; (punto y coma). Con este enfoque, puede ingresar varios comandos en la misma línea. En este caso, a diferencia de la entrada habitual de comandos, para ejecutar el siguiente comando, no es necesario esperar a que finalice el anterior.

Comando_1; comando_2; comando_3

5. Ejecución de varios comandos en una línea y condición para completar con éxito el comando anterior

Acabamos de ver una forma de llamar a varios comandos en una sola línea. Esto ahorra tiempo. Pero, ¿qué sucede si quiere, digamos, cuando llama a dos comandos, de modo que el siguiente comando se ejecute solo si el anterior se completa sin errores?

Imagine que desea compilar el código y luego, si la compilación fue exitosa, llame a make ?

En tal situación, puede usar el delimitador && . Este delimitador asegura que el siguiente comando solo se ejecutará si el anterior tiene éxito.

Comando_1 && comando_2
Aquí buen ejemplo usando && :

sudo actualización adecuada&& Sudo apt actualizar

6. Fácil búsqueda y uso de comandos ingresados ​​​​previamente

Imagine que usted, hace un par de minutos o un par de horas, ingresó un comando largo y necesita este comando nuevamente. Además, el problema es que no puedes recordar exactamente este comando.

En tal situación, una búsqueda inversa lo salvará. Esta técnica le permite buscar una palabra clave en el historial de comandos. Aquí basta con usar la combinación de teclas Ctrl + R para lanzar una búsqueda inversa e ingresar algo relacionado con el comando. El sistema revisará el historial de comandos y mostrará los comandos que coincidan con la consulta ingresada.

Ctrl+R término_búsqueda
De forma predeterminada, solo se mostrará un resultado. Para ver más resultados que coincidan con su consulta, deberá usar el método abreviado de teclado Ctrl + R una y otra vez. Para salir del modo de búsqueda inversa, presione Ctrl + C.


Búsqueda de historial de comando inverso

Tenga en cuenta que en algunos bash conchas Puede utilizar las teclas Re Pág y Av Pág para desplazarse por los resultados de la búsqueda.

7. Desbloquear el terminal después de presionar accidentalmente Ctrl + S

Es posible que esté acostumbrado a usar el método abreviado de teclado Ctrl + S para guardar archivos. Pero si presiona estas teclas en la terminal de Linux, la bloqueará.

Si antes, para corregir la situación, se vio obligado a cerrar y reiniciar el terminal, ahora puede respirar tranquilo, ya no tendrá que hacer esto. Para que el terminal funcione, simplemente use la combinación de teclas Ctrl + Q .

8. Ir al principio o al final de una línea

Imagine que ingresa un comando largo y en algún lugar en el medio se da cuenta de que tiene que cambiar algo al principio. Probablemente esté utilizando las teclas de flecha para moverse primero al principio de la línea y luego volver al final.

Por supuesto, en tal situación, puede usar las teclas Inicio y Fin, pero, alternativamente, usando la combinación de teclas Ctrl + A puede ir al principio de la línea y usando la combinación Ctrl + E - hasta el final.


Ir al principio o al final de una línea

Encuentro esta forma más conveniente que usar las teclas Inicio y Fin, especialmente cuando estoy trabajando en una computadora portátil.

9. Leer archivos de registro en tiempo real

Cuando necesite analizar archivos de registro en los que alguna aplicación en ejecución escribe durante el análisis, puede usar el comando tail con la opción -f.

Tail -f ruta_al_registro
Alternativamente, puede usar el comando grep en su forma normal para mostrar solo las líneas que le interesan:

Tail -f ruta_al_registro | grep término_búsqueda
También puede usar la opción F aquí. Esto hará que la utilidad tail continúe ejecutándose incluso si se elimina el archivo de registro que se está visualizando. Con este enfoque, si este archivo se vuelve a crear, Tail seguirá imprimiendo datos en la pantalla.

10. Leer archivos de registro comprimidos sin descomprimirlos

Los registros del servidor generalmente se comprimen con gzip para ahorrar espacio en disco. Esto puede generar algunos inconvenientes al analizar los registros por parte de los desarrolladores o administradores del sistema. Es posible que deba usar el comando scp para copiar el archivo en su directorio local y luego extraer el archivo del archivo para poder verlo, ya que es posible que no tenga permiso de escritura en el lugar donde está almacenado el archivo que le interesa.

Aquí acudimos en ayuda de un grupo de comandos cuyo nombre comienza con la letra "z". Estos comandos son una alternativa a los comandos habituales que se utilizan para trabajar con archivos de registro. Entre ellos se encuentran less, cat, grep y otros.

Entonces, usando los comandos zless , zcat , zgrep y similares, no tiene que desempaquetar explícitamente archivos comprimidos. Se pueden ver detalles sobre estos comandos.

Por cierto, cuando le conté a un colega sobre estos comandos "secretos", tomé una taza de café.

11. Usar el comando less para leer archivos

Si necesita ver un archivo, especialmente uno grande, puede probar cat , pero es mucho mejor buscar en otra parte. El hecho es que cat mostrará el archivo completo en la pantalla, lo cual no es tan conveniente.

Puede usar un editor como Vi o Vim en una terminal para ver archivos, pero si solo necesita leer un archivo, el comando less es útil.

Menos ruta_al_archivo
Durante una sesión con menos, puede buscar los fragmentos de texto deseados palabras clave, navegar por las páginas, generar datos con números de línea, etc.

12. Reutilizar el último elemento del comando anterior con !$

En muchas situaciones, es muy útil poder utilizar el argumento del comando anterior.

Suponga que necesita crear un directorio y luego ir a él. Aquí puede usar la opción !$ ingresando el comando de salto después del comando de creación de directorio.


Use!$ para usar el último argumento de comando

Aún mejor, se hace lo mismo usando el atajo de teclado Alt +. (punto). El punto se puede usar varias veces para iterar sobre las opciones del último comando.

13. Usando el comando anterior en el comando actual con!!

¡¡Mediante el uso!! puede llamar a todo el comando anterior. Este truco es especialmente útil cuando necesitas ejecutar un comando y resulta que necesitas privilegios de superusuario para ejecutarlo. Por ejemplo, la siguiente figura muestra una situación en la que comando sudo!! le permite ahorrar mucho tiempo.


¡¡¡Aprovechar!!! para sustituir el último comando como argumento

14. Usar alias para corregir errores tipográficos

Es posible que ya esté familiarizado con el comando alias. Se puede utilizar para corregir errores en los comandos introducidos.

Por ejemplo, puede suceder que con frecuencia escriba gerp en lugar de grep. Si no puede detener el mal hábito, agregue un alias a su archivo bashrc como este:

Alias ​​gerp=grep
Ahora no tendrá que volver a escribir este comando si ingresa su nombre incorrectamente.

15. Copiar y pegar en la terminal de Linux

Este consejo es algo ambiguo ya que depende de la distribución de Linux y del terminal.

Pero, por lo general, los comandos de copiar y pegar se pueden invocar así:

  • Seleccione el texto que desea copiar y haga clic en botón derecho del ratón mouse para pegarlo (funciona en Putty y otros clientes SSH para Windows).
  • Seleccione el texto que desea copiar, luego haga clic en botón central ratón (rueda de desplazamiento) para pegarlo.
  • Utilice los métodos abreviados de teclado Ctrl + Shift + C para copiar y Ctrl + Shift + V para pegar.

16. Terminar un equipo o proceso

Quizás lo que quiero aconsejar aquí es bastante obvio, sin embargo, te lo contaré de todos modos. Si un comando se está ejecutando en primer plano y desea salir, puede presionar Ctrl + C para detenerlo.

17. Uso del comando yes para automatizar comandos o secuencias de comandos interactivos

Si tiene que trabajar con algunos comandos o scripts que involucran la interacción del usuario y sabe que escribirá Y para cada pregunta en el programa, puede automatizar este proceso con el comando yes. Se hace así:

Sí | comando_o_script

18. Borrar el contenido de un archivo sin borrar el archivo en sí

Si desea borrar el contenido Archivo de texto sin eliminar el archivo en sí, puede usar el siguiente comando:

> nombre de archivo

19. Averiguar si un directorio contiene archivos que contienen cierto texto

La línea de comandos de Linux admite muchas formas de encontrar información. Sin embargo, si solo desea saber si hay archivos en un directorio que contienen cierto texto, puede usar este comando:

Grep -Pri Search_Term ruta_al_directorio
Sin embargo, aconsejo a cualquiera que necesite buscar en Linux que entienda correctamente con encontrar comando.

20. Solicitar ayuda para cualquier comando

Quiero terminar este material con un "truco" muy obvio, pero sin embargo muy importante, que es llamar a la ayuda de un comando o herramienta. línea de comando.

Casi todas las herramientas de línea de comandos contienen información de contexto, revelando las características de su uso. Por lo general, la ayuda de lectura lo ayuda a comprender los conceptos básicos de un comando. Puedes llamar a ayuda así:

Herramienta_comando --ayuda

Intencionalmente no incluí comandos como joder en este material, ya que no son el tipo de medios estándar que se puede encontrar literalmente en todas partes. Lo que he dicho aquí puede ser útil cuando se trabaja con casi todos distribuciones de Linux y shells de línea de comandos sin necesidad de instalar nuevos programas.

Si nota un error, seleccione un fragmento de texto y presione Ctrl + Enter
COMPARTIR: