web-dev-qa-db-fra.com

Comment obtenir et copier une sortie trop longue complètement dans le terminal?

En terminal, une commande a une sortie trop longue. Mais lorsque je reviens en arrière, je vois qu’il est tronqué et que seule la dernière partie est affichée. Dans Gnome-Terminal et Konsole, j'ai ce problème. Dans xterm il n'y a pas un tel problème mais je ne peux pas copier la sortie dans xterm.

Comment puis-je obtenir la sortie complète?

8
user126106

Je sais que dans xfce4-terminal, il existe une option pour augmenter le nombre de lignes affichées:

enter image description here

Pour Ubuntu Terminal enter image description here

À part cela, il y a ce que @ Zelda64fan a dit.

Vous pouvez envoyer la sortie dans un fichier: command > file.txt (où command est la commande à exécuter et file.txt, le fichier dans lequel vous souhaitez l'enregistrer), puis affichez-le avec gedit file.txt.

9
Zelda64fan

Utiliser xclip

cat long.output | xclip -sel clip

Si non installé, vous pouvez faire

Sudo apt-get install xclip
8
razpeitia

Si vous n'avez pas besoin de la totalité de la sortie, vous pouvez la faire passer par moins: command | less. Cela éviterait également d'avoir à supprimer le fichier une fois que vous avez examiné la sortie.

5
lotsoffreetime

Dans xterm, la copie automatique sur select devrait être la valeur par défaut. Essayez de cliquer trois fois puis utilisez un bouton central de la souris (ou un troisième bouton émulé) pour coller.

La même chose devrait fonctionner avec d'autres terminaux, mais vous devez manuellement copier et coller.

Il existe de nombreuses façons de le faire. J'aime utiliser script dans certains cas. Tapez 'script' à partir d'une ligne de commande pour le démarrer avant de lancer une commande à partir de la ligne de commande, puis appuyez sur Ctrl-D pour l'arrêter. Si vous ne spécifiez pas de nom de fichier de capture, 'TypeScript' est le nom par défaut. Tout ce qui est imprimé à l'écran doit être capturé dans le fichier.

2
belacqua

Enregistrer la sortie de la console dans un fichier:

  1. tee commande

tee commande - lit à partir de l'entrée standard et écrit dans la sortie standard et les fichiers.

Il crée automatiquement un fichier et enregistre toutes les sorties de cmd ps -ax dans un fichier nommé processes_info dans le même dossier que celui où la cmd a été exécutée.

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

script commande - rend TypeScript de la session de terminal.

user@admin:~$ script my_console_output.txt

Cela crée un fichier nommé my_console_output.txt, ouvrira un sous-shell et enregistrera toutes les informations au cours de cette session. Après cela, le script se lance et quelle que soit la sortie de la console, il sera stocké dans le fichier my_console_output.txt; à moins que et jusqu'à ce que le script se termine à la sortie du shell forké. (par exemple, lorsque l'utilisateur tape exit ou lorsque CTRLD est tapé.)

user@admin:~$ script -c "ps ax" processes_info.txt
  • ça commence le script;
  • crée le fichier processes_info.txt;
  • stocke la sortie de la console dans le fichier;
  • terminer (fermer) le script.

    Autre exemple:

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