GNU/Linux >> Linux Esercitazione >  >> Linux

Colora parole specifiche nel terminale Linux ogni volta che appaiono

Per colorare l'output del testo da un comando si potrebbe provare a reindirizzare l'output del comando in sed, come il seguente:

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

Si potrebbe anche inserire queste regole di sostituzione in un file di testo (ad es. colorize.sed) e utilizzare quanto segue:

il tuo comando | sed -f colorize.sed

Ciò consentirà di assegnare colori diversi a stringhe di corrispondenza diverse. Nota che nei miei esempi '^[' indica il carattere di escape, non un carato seguito da una parentesi quadra. Il carattere di escape può essere inserito nella regola digitando Ctrl-V e quindi premendo il tasto Esc.

I colori/effetti disponibili per questi codici tty sono i seguenti:

Colori di primo piano:Nero=30, Blu=34, Ciano=36, Verde=32, Viola=35, Rosso=31, Bianco=37, Giallo=33

Colori di sfondo:Nero=40, Blu=44, Ciano=46, Verde=42, Viola=45, Rosso=41, Bianco=47, Giallo=43

Effetti:Normale=00, Grassetto=01, Scuro=02, Sottolineato=04, Lampeggiante=05, Invertito=07, Nascosto=08

Questi possono anche essere combinati con un punto e virgola come ho fatto io (ad esempio 01;31 per ottenere il grassetto rosso).

Si noti che il codice '^[00m' è necessario per disabilitare il colore/effetto precedente, altrimenti il ​​colore/effetto persisterà dopo la stringa di corrispondenza. Nota anche che alcuni degli effetti non funzionano (o funzionano come ho descritto) con alcuni emulatori di terminale.

Spero di non ripetere solo ciò che qualcun altro ha già detto, perché non ho letto l'intero thread della discussione.


Probabilmente è più facile colorare le parole da soli, piuttosto che farle colorare al terminale per te. Se non puoi modificare gli script che creano l'output, puoi filtrarli attraverso qualcos'altro?

All'estremità della scala più probabile che sia disponibile, puoi convogliare il tuo output attraverso grep :

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

Questo corrisponde a "FAIL" o "", ed evidenzia la parte corrispondente della stringa.

Potresti inoltre utilizzare qualcosa di più specializzato, come descritto in questo post del blog, ad esempio.


Linux
  1. 9 Esempi di tput UNIX / Linux:controlla il colore e il cursore del tuo terminale

  2. Cowsay:divertimento nel terminale Linux

  3. Come eseguo l'output di testo colorato su un terminale Linux?

  4. Perché Linux emette sempre ^C premendo Ctrl+C?

  5. nella console linux, come NON avvolgere l'output

Cambia il tema del colore del tuo terminale Linux

Dai un tocco di colore al tuo terminale Linux con lolcat

Lolcat:uno strumento da riga di comando per generare Rainbow Of Colors nel terminale Linux

Come modificare il colore di output di "Echo" in Linux

Bash Scripting:come generare e formattare il testo su Linux Shell

Come posso trovare un file specifico da un terminale Linux?