Come ottenere e copiare un output troppo lungo completamente nel terminale?


8

Nel terminale un comando ha un output troppo lungo. Ma quando scorro indietro vedo che viene troncato e viene mostrata solo l'ultima parte. In Gnome-Terminal e Konsole ho questo problema. In xterm non c'è questo problema ma non riesco a copiare l'output in xterm.

Come posso ottenere l'output completo?


Risposte:


5

So che nel terminale xfce4 esiste un'opzione per aumentare il numero di righe visualizzate:

inserisci qui la descrizione dell'immagine

Per Ubuntu Terminal inserisci qui la descrizione dell'immagine

A parte questo, c'è quello che ha detto @ Zelda64fan.


+1 Pipa e teenon sono ottimali in quanto non funzionano in alcuni casi come prendere inHROOT 3NVIORTNM3NT
22lk94k943 solo

9

È possibile inviare l'output a un file: command > file.txt(dove si commandtrova il comando che si desidera eseguire ed file.txtè il file in cui si desidera salvarlo) e quindi visualizzarlo con gedit file.txt.


8

Usa xclip

cat long.output | xclip -sel clip

Se non installato puoi farlo

sudo apt-get install xclip

Questo è il mio preferito per i terminali della GUI. Con TTY non funzionerà, sfortunatamente, solo il reindirizzamento a un file aiuterà lì
Sergiy Kolodyazhnyy,

5

Se non avete bisogno di tutta la produzione, si potrebbe pipe attraverso meno: command | less. Ciò eviterebbe anche il fastidio di dover eliminare il file dopo aver verificato l'output.


lessl'output è piuttosto difficile da copiare.
Sparhawk,

2

In xterm, autocopy on select dovrebbe essere l'impostazione predefinita. Prova a fare triplo clic, quindi usa un pulsante centrale del mouse (o il terzo pulsante emulato) per incollare.

Lo stesso dovrebbe funzionare con altri terminali, ma è necessario copiare e incollare manualmente.

Ci sono molti, molti modi per farlo. Mi piace usare scriptin alcuni casi. Digita "script" da una riga di comando per avviarlo prima di avviare un comando dalla riga di comando, quindi premi Ctrl-D per interrompere. Se non si specifica un nome file di acquisizione, "typescript" è l'impostazione predefinita. Tutto ciò che viene stampato sullo schermo deve essere acquisito nel file.


2

Salva l'output della console in un file:

  1. tee comando

comando tee : leggi dallo standard input e scrivi nello standard output e nei file.

Crea automaticamente file e salva, tutto l'output di cmd ps -axin un file chiamato come processes_infonella stessa cartella da cui è stato eseguito il cmd.

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

comando script - crea il dattiloscritto della sessione terminale.

user@admin:~$ script my_console_output.txt

Questo crea un file chiamato come my_console_output.txte aprirà una sottostruttura e registra tutte le informazioni attraverso questa sessione. Dopo questo, lo script viene avviato e qualunque sia l'output della console, verrà memorizzato nel file my_console_output.txt; a meno che e fino alla fine dello script quando esce la shell biforcuta. (ad esempio, quando l'utente digita exito quando CTRLDviene digitato.)

user@admin:~$ script -c "ps ax" processes_info.txt
  • inizia la sceneggiatura;
  • crea il file processes_info.txt;
  • memorizza l'output della console nel file;
  • termina (chiudi) lo script.

    Altro esempio:

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

script -c "rails runner -e development lib/scripts/my_script.rb" report.txtmi ha aiutato a catturare facilmente l'output molto lungo di uno script del corridore di Rails su un file. Ho provato a utilizzare il reindirizzamento su un file ma è stato scritto solo alla fine dello script. Questo non mi ha aiutato perché avevo pochi comandi interattivi nella mia sceneggiatura. Poi ho usato solo scriptil mio e quindi ho eseguito la rails runnersessione di script ma non ha scritto tutto. Poi ho trovato questo script -c "runner command here" output_filee ha salvato tutto l'output come desiderato. Questo era su Ubuntu 14.04 LTS
Jignesh Gohel il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.