quarta-feira, 18 de setembro de 2013

Script bash com cores

Quem escreve script bash pode trabalhar com cores. É simples:

$ echo -e '\e[34;43;1m teste \e[m'


Aqui, a cor do texto é azul (34) e o fundo amarelo (43) e negrito (1). Abaixo mostro um script simples que mostra todas as combinações possíveis.

#!/bin/bash
for atributo in 1 4 7
do
    for texto in `seq 30 37`
    do
        echo -n '|'
        for fundo in `seq 40 47`
        do
            echo -n -e '\e['$texto';'$fundo';'$atributo'm '$texto $fundo $atributo' \e[m'
            echo -n ' | '
        done
        echo   
    done
done

Ao executar esse script, a tela abaixo é mostrada. Cada célula contém os valores para a cor do texto, a cor do fundo, e o atributo.


Assim fica mais fácil escrever scripts elegantes.