Usar a opção --color
funciona para mim quando eu executo o grep dentro de scripts de shell.
Aqui está um exemplo do que você quer.
grep -n --color=auto "PATTERN" FILE
Quando eu executo grep
de dentro do gnome-terminal, recebo saída colorida - correspondência facilmente perceptível, números de linha (-n) com cores diferentes, etc.
Mas quando eu executo exatamente o mesmo comando grep
através do script bash, recebo saída de plano, sem colorir
Existe uma maneira de obter saída colorida usando o script bash?
Usar a opção --color
funciona para mim quando eu executo o grep dentro de scripts de shell.
Aqui está um exemplo do que você quer.
grep -n --color=auto "PATTERN" FILE
Aqui está um pequeno script que ajuda você a entender como o tput funciona com o bash
#!/bin/bash
#@auth kesavan.muthuvel
#@desc - bash with colors :)
B='tput bold' #BOLD
D='tput dim' #DIM
U='tput sgr 0 1' #UNDERLINE
U2='tput smul' #UNDERLINE2
NOU='tput rmul' #NO UNDERLINE
H='tput smso' #HIGHLIGHT
X='tput sgr0' #RESET
C='tput setaf ' #COLOR
for i in 0 1 2 3 4 5 6 7 ; do
c='$C$i' && echo $c${B}I${U}always$NOU $D love \
${U2}colors$NOU \& $c${H}GNU/Linux$X
done;
Isso imprimirá a seguinte saída com formatos como BOLD , UNDERLINE, Highlighting e cores.
Você tentou adicionar esse alias ao seu ~/.bashrc
?
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
Tags bash