GNU/Linux >> Tutoriels Linux >  >> Linux

Couleur des mots spécifiques dans le terminal Linux chaque fois qu'ils apparaissent

Pour coloriser la sortie de texte d'une commande, vous pouvez essayer de rediriger la sortie de la commande vers sed, comme suit :

votrecommande | sed -e 's/FAIL/^[[01;31mFAIL^[[00m/g' -e 's/SUCCESS/^[[01;32mSUCCESS^[[00m/g'

On pourrait également placer ces règles de substitution dans un fichier texte (par exemple colorize.sed) et utiliser ce qui suit :

votrecommande | sed -f coloriser.sed

Cela permettra d'attribuer différentes couleurs à différentes chaînes de correspondance. Notez que dans mes exemples, le '^[' signifie le caractère d'échappement, pas un carat suivi d'un crochet. Le caractère d'échappement peut être entré dans la règle en tapant Ctrl-V puis en appuyant sur la touche d'échappement.

Les couleurs/effets disponibles pour ces codes tty sont les suivants :

Couleurs de premier plan :Noir=30, Bleu=34, Cyan=36, Vert=32, Violet=35, Rouge=31, Blanc=37, Jaune=33

Couleurs de fond :Noir=40, Bleu=44, Cyan=46, Vert=42, Violet=45, Rouge=41, Blanc=47, Jaune=43

Effets :Normal=00, Gras=01, Dim=02, Souligné=04, Clignotant=05, Inversé=07, Masqué=08

Ceux-ci peuvent également être combinés avec un point-virgule comme je l'ai fait (c'est-à-dire 01;31 pour obtenir du rouge gras).

Notez que le code '^[00m' est requis pour désactiver la couleur/l'effet précédent, sinon la couleur/l'effet persistera après la chaîne de correspondance. Notez également que certains effets ne fonctionnent pas (ou ne fonctionnent pas comme je l'ai décrit) avec certains émulateurs de terminaux.

J'espère que je ne fais pas que répéter ce que quelqu'un d'autre a déjà dit, car je n'ai pas lu tout le fil de discussion.


Il est probablement plus facile de colorier les mots vous-même, plutôt que de demander au terminal de les colorier pour vous. Si vous ne pouvez pas modifier les scripts qui créent la sortie, pouvez-vous les filtrer à travers autre chose ?

À l'extrémité la plus susceptible d'être disponible, vous pouvez diriger votre sortie vers grep :

tail -F logfile | grep --color -P "FAIL|"

Cela correspond à "FAIL" ou "", et met en surbrillance la partie correspondante de la chaîne.

Vous pouvez également utiliser quelque chose de plus spécialisé, comme décrit dans cet article de blog, par exemple.


Linux
  1. Linux - La sortie de Ps Lstart a changé?

  2. Linux - Vérifiez si le terminal prend en charge 24 bits / True Color ?

  3. 5 utilisations de la commande mv dans le terminal Linux

  4. 9 Exemples tput UNIX / Linux :contrôlez la couleur et le curseur de votre terminal

  5. Cowsay :amusant dans le terminal Linux

Changez le thème de couleur de votre terminal Linux

Apportez de la couleur à votre terminal Linux avec lolcat

Lolcat - Un outil de ligne de commande pour produire un arc-en-ciel de couleurs dans un terminal Linux

Comment changer la couleur de sortie de 'Echo' sous Linux

Bash Scripting :comment générer et formater du texte sur le shell Linux

Comment arrêter Linux à une date et heure spécifique depuis le terminal ?