¿Cómo obtener y copiar una salida demasiado larga por completo en la terminal?


8

En la terminal, un comando tiene una salida demasiado larga. Pero cuando me desplazo hacia atrás, veo que está truncado y solo se muestra la última parte. En Gnome-Terminal y Konsole tengo este problema. En xterm no existe ese problema, pero no puedo copiar la salida en xterm.

¿Cómo puedo obtener la salida completa?


Respuestas:


5

Sé que en el terminal xfce4 hay una opción para aumentar el número de líneas que se muestran:

ingrese la descripción de la imagen aquí

Para ubuntu Terminal ingrese la descripción de la imagen aquí

Aparte de eso, hay lo que dijo @ Zelda64fan.


+1 Pipe y teeno son óptimos, ya que no funcionan en algunos casos, como tomar unHROOT 3NVIORTNM3NT
22lk94k943 solo el

9

Puede enviar la salida a un archivo: command > file.txt(donde commandestá el comando que desea ejecutar y file.txtes el archivo en el que desea guardarlo) y luego verlo con gedit file.txt.


8

Use xclip

cat long.output | xclip -sel clip

Si no está instalado puedes hacerlo

sudo apt-get install xclip

Este es mi favorito personal para terminales GUI. Con TTY no funcionará, desafortunadamente, solo la redirección a un archivo ayudará allí
Sergiy Kolodyazhnyy

5

Si usted no necesita toda la producción, se podía canalizarla a través de menos: command | less. Esto también ahorraría la molestia de tener que eliminar el archivo una vez que haya revisado la salida.


lessLa salida es bastante difícil de copiar.
Sparhawk

2

En xterm, la copia automática al seleccionar debe ser la predeterminada. Intente hacer triple clic y luego use un botón central del mouse (o tercer botón emulado) para pegar.

Lo mismo debería funcionar con otros terminales, pero debe copiar y pegar manualmente.

Hay muchas, muchas formas de hacer esto. Me gusta usar scripten algunos casos. Escriba 'script' desde una línea de comando para iniciarlo antes de iniciar un comando desde la línea de comando, luego presione Ctrl-D para detenerlo. Si no especifica un nombre de archivo de captura, 'typecript' es el valor predeterminado. Todo lo impreso en la pantalla debe capturarse en el archivo.


2

Guarde la salida de la consola en un archivo:

  1. tee mando

teeComando : lea desde la entrada estándar y escriba en la salida y los archivos estándar.

Crea automáticamente el archivo y guarda, toda la salida de cmd ps -axen un archivo llamado como processes_infoen la misma carpeta desde donde se ejecutó el cmd.

user@admin:~$ ps -ax | tee processes_info
  1. script mando

comando de script : crea el mecanografiado de la sesión terminal

user@admin:~$ script my_console_output.txt

Esto crea un archivo llamado como my_console_output.txty abrirá una subshell y registra toda la información a través de esta sesión. Después de esto, el script comienza y sea cual sea el resultado de la consola, se almacenará en el archivo my_console_output.txt; a menos y hasta que la secuencia de comandos finalice cuando el shell bifurcado salga. (por ejemplo, cuando el usuario escribe exito cuando CTRLDse escribe).

user@admin:~$ script -c "ps ax" processes_info.txt
  • comienza el guión;
  • crea el archivo processes_info.txt;
  • almacena la salida de la consola en el archivo;
  • finalizar (cerrar) el guión.

    Otro ejemplo:

    script -c 'echo "Hello, World!"' hello.txt
    

script -c "rails runner -e development lib/scripts/my_script.rb" report.txtme ayudó a capturar fácilmente la salida muy larga de un script de corredor de Rails a un archivo. Intenté usar la redirección a un archivo, pero se escribió solo al final del script. Eso no me ayudó porque tenía pocos comandos interactivos en mi script. Luego usé solo scripten mi y luego ejecuté la rails runnersesión de script pero no escribió todo. Luego encontré esto script -c "runner command here" output_filey guardó toda la salida como se deseaba. Esto fue en Ubuntu 14.04 LTS
Jignesh Gohel el
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.