J'aime la façon dont vim met en évidence la sortie de syslog. Cependant, je souhaite uniquement que les sorties les plus récentes soient ouvertes. j'ai essayé
grep --color=always "$@" /var/log/syslog > /tmp/fileOUT
vim /tmp/fileOUT
mais il donne la sortie couleur bash comme [033; m bla bla. Si je ne fais pas include --color=always
, il n'y a pas de couleur du tout. Comment puis-je faire ceci? (J'utilise bash)
Bien, vim
tilise des fichiers de modèles de couleurs pour la coloration syntaxique. Cela n'a rien à voir avec la sortie de grep
qui utilise des séquences d'échappement ANSI (le fichier \[033;
que vous avez mentionné).
Mon vim n'a pas de fichier de style pour syslog et ne le colore pas (j'ai vérifié à la fois sur Debian et sur Ubuntu 14.04). Si vous examinez le fichier correspondant sur votre système, vous constaterez qu'il commence par une expression régulière qui définit les fichiers à comparer. Donc, si vous faites correspondre votre /tmp/fileOUT
à cette syntaxe, celle-ci doit être colorée. N'utilisez pas --color=always
, cela risque de tout gâcher.
Vous pouvez également utiliser source-highlight
. Installez-le avec Sudo apt-get install source-highlight
puis exécutez:
Sudo tail -n 50 /var/log/syslog | source-highlight --out-format=esc -o STDOUT -s log
La commande ci-dessus colorera les 50 dernières lignes de /var/log/syslog
: