Obtenez les couleurs en moins de commande avec ccze: Shift + g ne va pas à la fin du fichier?

9

Dans tous les outils pour obtenir des couleurs avec la lesscommande suivante : -R, Pygments , GNU-highlight Source , vless , ... ccze faire me sastified avec commande ci - dessous:

ccze -A < /path/to/log/file | less -R

mais Shift+ gne fonctionne pas comme prévu:

  • Je dois appuyer sur Ctrl+ cpremier
  • suivre par Shift+ g, mais il ne va pas à la fin du fichier

Ai-je oublié quelque chose?

quanta
la source

Réponses:

7

Je vois le même comportement que vous décrivez lorsque je tente cela sur ce /var/log/syslogqui est de 2.1MBla taille et autour de 22500lignes. Soupçonnant que cczec'était en partie à blâmer, j'ai couru:

time ccze -A /var/log/syslog > foo

Ce qui a montré que cela cczeprend environ 55 secondes sur ma 1.2GHzmachine pour générer la sortie colorisée. Je pense que c'est ce qui fait se lessbloquer, lessne peut pas aller à la fin de la sortie avant d' cczeavoir fini de le générer, lesssemble donc se bloquer.

Alternatives pour améliorer ce travail:

  • Sélectionnez la sortie avec grep, sedetc., puis dirigez-la vers ccze.
  • Pré-colorisez le fichier et exécutez- lessle.
Thor
la source
Existe-t-il un outil pour pré-coloriser le fichier journal?
quanta
Je pensais dans le sens de ccze -A LOG > SOME_FILE. Peut-être exécuté dans un travail cron.
Thor
Pourquoi en avez-vous besoin, doit-il produire des séquences ANSI? J'utilise habituellement vimpour l'affichage des journaux, il a une bonne mise en évidence de la syntaxe. Je viens de le tester sur un 7 MBfichier journal sans décalage notable.
Thor
:se ft=sqlne me fait pas plaisir lors de la visualisation /var/log/mysqld.log.
quanta
1
Voici une version adaptée syntax/messages.vim, assez simple syn matchseulement. Allez le chercher ici , mettez-le dedans ~/.vim/syntaxet courez :set ft=mysqllog.
Thor
0

Les deux Meta-> et Meta- <fonctionnent parfaitement bien pour moi. Je suis habitué à eux car ils font de même dans emacs

ychaouche
la source