[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RES: [shell-script] Colorindo a saída de comandos
From: |
Julio Cezar Neves - DATAPREVRJ |
Subject: |
RES: [shell-script] Colorindo a saída de comandos |
Date: |
Tue, 7 Oct 2003 09:23:05 -0300 |
Cesar,
há muito tempo eu já tinha algo semelhante. Ele não colore, mas coloca em
modo ênfase a string procurada. veja só:
$ cat grep.sh
##########################################################################
# Shellscript: grep.sh - grep with highlighted match
# Author : Julio Cezar Neves (address@hidden)
# Date : 2002/01/09
# Category : Text Utilities
##########################################################################
if [ $# -lt 2 ]
then
echo "Uso: `basename $0` cadeia arquivo1 [arquivo2] ... [arquivon]"
exit
fi
SMSO=`tput smso`
RMSO=`tput rmso`
arg=`echo "$1" | sed 's/^-/\\\-/'`
shift
if [ $# -gt 1 ]
then
IFS=:
grep "$arg" $* |
while read Arq Linha
do
echo "$Arq:"`echo "$Linha" | sed "s/$arg/$SMSO$arg$RMSO/g"`
done
else
grep "$arg" $* | sed "s/$arg/$SMSO$arg$RMSO/g"
fi
[ ]s,
Julio Cezar Neves
-Programa de Software Livre da DATAPREV-
-I Support Free Software-
* +55 21 2528-7070 / +55 21 8112-9988
*address@hidden
> -----Mensagem original-----
> De: César A. K. Grossmann [mailto:address@hidden]
> Enviada em: segunda-feira, 6 de outubro de 2003 21:58
> Para: address@hidden
> Assunto: [shell-script] Colorindo a saída de comandos
>
>
> Pessoal
>
> Um pequeno desafio de programação: escrever um shell script que
> funcione como um "grep colorizador". Informa-se como parâmetros da
> linha de comando a cor e a expressão regular a ser encontrada, e o
> programa irá colorir tudo o que passar da entrada padrão para a saída
> padrão. Assim, para encontrar as linhas que tem a expressão "table" em
> vários arquivos html, e colorir em vermelho a expressão "100%", o
> comando seria o seguinte:
>
> $ grep table *.html | gcolor --color=red "100%"
>
> A primeira parte do "pipe" é um comando grep normal, e a segunda, uma
> chamada ao shell script. De preferência não usando ruby, python, perl
> e outras linguagens de script, exceção feita ao awk e ao sed.
>
> Para colorir as strings, utilizar as seqüências e constantes ANSI de
> cores (Google is your friend).
>
> []s
> --
> César A. K. Grossmann
> http://www.LinuxByGrossmann.cjb.net/
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de
> programação, como perl, C etc. Quem insistir em não seguir
> esta regra será moderado sem prévio aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
http://www.listasdiscussao.cjb.net
---------------------------------------------------------------------
Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
http://br.yahoo.com/info/utos.html
- RES: [shell-script] Colorindo a saída de comandos,
Julio Cezar Neves - DATAPREVRJ <=