Grep_color su mac


12

Sto cercando di evidenziare il mio regex su Mac usando il terminale. Ho messo questo è il mio .profile:

export GREP_COLOR='1;30;40'

Non cambia nulla, quindi ho aggiunto lo stesso al mio bash.profileancora niente, riavviato la macchina nulla. Quando sono:

egrep --color=auto ".*\W blah blah "

poi si illumina di un colore giallo ma mi chiedevo se avevo fatto qualcosa di sbagliato nel mio .profileo bash_profile.

Qualsiasi aiuto sarebbe buono: snow leopard, con un semplice vecchio terminale :-)


2
Non è GREP_COLORdeprecato? In ogni caso, è grep --colornecessario evidenziare le corrispondenze con il colore predefinito, senza che siano necessarie variabili di ambiente.
jw013,

Questo è solo mezzo vero. GREP_COLORconsente di personalizzare i colori effettivi, mentre --colorabilita / disabilita solo i colori configurati per impostazione predefinita. E PENSO GREP_COLORS(plurale) è ciò che è deprecato. Ecco perché la mia forma colorante anni fa è scomparsa senza che me ne accorgessi.
Sridhar Sarnobat,

Risposte:


22

Questo ha funzionato sulla mia macchina del leopardo delle nevi. Prova a copiare e incollare il testo nel tuo terminale e vedere se grep mostra il comportamento desiderato. In tal caso, il problema è che non lo stai aggiungendo al dotfile giusto. Che shell stai usando? Il dotfile a cui dovresti aggiungerlo dipende dalla shell che usi.

export GREP_OPTIONS='--color=auto'
export GREP_COLOR='1;30;40'

Inoltre, prova a correre printenvper vedere quali variabili ambientali hai già impostato e vedi se ci sono già opzioni grep.


eccellente!!! grazie!! molto meglio di impostare un alias!
Cwd,

1
Strano. Stavo per votare questa risposta, ma non ha funzionato per me usando Terminal su Snow Leopard. Ha trasformato il testo abbinato in scatole completamente nere.
Vecchio Pro

2
@OldPro - Vorrei raccomandare effettivamente l'uso export GREP_COLOR='1;35;40'perché 35 è ciano e 30 è grigio- 40 è sfondo nero, quindi sembra scuro. Ma sì, funziona! :)
Cwd,

Il mio terminale è diventato molto più bello. So che la vera bellezza è dentro ma sono superficiale.
Sridhar Sarnobat,

1

Non credo che l'impostazione predefinita di Snow Leopard sia usare il colore per grep. Ho avuto successo sul mio box OS X con l'aggiunta di una linea come alias grep=grep --color=alwaysnella mia .bashrcper garantire una messa in evidenza coerente.


6
--color=alwayspuò essere un problema se l'output di grep viene reindirizzato a un altro comando. --color=autoemetterà i caratteri di controllo solo quando l'output viene visualizzato direttamente sul terminale
Gowtham

1

Non è bash.profilebash_profileè .bash_profile.

Per quanto riguarda i colori sul tuo Mac, basta inserire questo nel tuo ~/.bash_profile:

export GREP_OPTIONS='--color=auto'
export GREP_COLOR='1;30;40'

Assicurati di utilizzare .bash_profilenella tua home directory ( ~/).

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.