97 votes

Désactiver le retour à la ligne pour la sortie dans le terminal

Je lis souvent des sorties dans le terminal qui sont enveloppées car elles sont trop longues. Comme il n'y a aucun moyen de modifier la sortie imprimée, je dois faire en sorte que le terminal permette un défilement horizontal.

Y a-t-il une modification que je peux faire au terminal OS X par défaut pour désactiver le retour à la ligne et permettre défilement horizontal ?

Ou connaissez-vous une autre alternative que je peux utiliser ?

0 votes

Vieille question, mais il me semble qu'elle n'est toujours pas résolue. J'ai besoin de la même réponse, car pour moi, je ne peux pas modifier la sortie de GCC par exemple : gcc.gnu.org/onlinedocs/gcc/Language-Independent-Options.html Avec le drapeau -fmessage-length=0 je reçois toujours une sortie d'avertissement/d'erreur de plusieurs lignes. et je n'en ai pas (pour l'instant).

80voto

user13158 Points 118

tput est-ce que le astuce pour moi :

tput rmam

désactive le retour à la ligne.

tput smam

permet le retour à la ligne.

27 votes

+1 mais est-il possible d'ajouter le défilement horizontal aussi ?

0 votes

Les touches fléchées fonctionnent pour moi pour passer horizontalement à l'écran suivant.

11 votes

Je ne vois pas comment utiliser les touches fléchées... elles ne fonctionnent pas pour moi. Cette solution semble simplement tronquer les lignes à la largeur de la fenêtre actuelle. Lorsque j'agrandis la fenêtre, il n'y a que de l'espace vide à droite des lignes qui, je le sais, contiennent plus de caractères. Néanmoins, cette solution est utile pour mes besoins puisque j'affiche des journaux et que les informations à l'extrême droite sont sans importance pour le moment.

17voto

mtklr Points 429

Passez la sortie par less -S :

   -S or --chop-long-lines
          Causes lines longer than the screen width to be chopped (truncated)
          rather than wrapped.  That is, the portion of a long line that does
          not fit in the screen width is not shown.  The default is  to  wrap
          long lines; that is, display the remainder on the next line.

J'ai essayé d'expliquer ce qui pouvait se passer aquí Cependant, cela ne permettra pas de faire défiler les pages horizontalement avec une barre de défilement, comme vous semblez le souhaiter.

0 votes

Comment faire less s'affichent normalement au lieu de s'afficher dans un q l'écran ?

6voto

L'iTerm 2 ne semble pas non plus prendre en charge la désactivation du retour à la ligne. Vous pouvez cependant utiliser less ou cut :

less /var/log/system.log
expand /var/log/system.log | cut -c 1-$COLUMNS
less -s <<< "$(osascript -e 'tell app "Terminal" to contents of window 1')"

2voto

Giraffe Points 1135

Si c'est le cas (comme d'autres l'ont suggéré comme solution, bien que je pense que vous ayez demandé une sortie directe), redirigez la sortie vers un fichier somename.log et ouvrez-le avec Applications>Utilitaires>Log-Viewer (ou à partir de la ligne de commande en tant que open somename.log ).

Ce n'est pas dans le terminal mais j'ai trouvé que la visionneuse de journaux était la mieux adaptée pour traiter une grande quantité de données (recherche, défilement, filtrage).

0 votes

Je pense que vous voulez dire le Console.app n'est-ce pas ? Il n'y a pas Log Viewer.app dans les Utilitaires. Cependant, la console s'enroule également, la seule différence étant que les longues lignes sont contractées par défaut. Il faut donc cliquer dessus pour tout lire, ce qui n'est malheureusement d'aucune utilité.

2voto

Alex Craft Points 271

Utilisez cut

myscript | cut -c -100

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X