Formatar o terminal com cores e efeitos
Publicado por Joanes Pereira Duarte (última atualização em 08/11/2012)
[ Hits: 8.423 ]
Este script é baseado no livro do Aurélio Marinho Jargas. Fiz como exercício para meu aprendizado. Como já "suguei" muito conhecimento do site, resolvi postar para contribuir e talvez ajudar alguém, assim como muitas vezes fui ajudado aqui :)
Em resumo, este script serve para testar a combinação de cores de palavras/frases com cores de fundo. No meio tem algumas "firulas", como "limpar a tela", mostrar mensagem por um tempo e apagar... Coisa de principiante mesmo!
Enfim, segue o dito-cujo...
#!/bin/bash
# cores.sh
# Baseado no livro Shell Script Profissiona de Aurélio Jargas
#
# Versão 1: Formata cor do texto e fundo de palavra ou texto
# passada como parâmetro.
#
# Joanes Duarte, Outubro 2012
#
###########################################
# Exemplo: $./cores.sh teste #
# Obs.: Frases com espaços devem ser passadas entre aspas ("")#
###########################################
# Variáveis
_TEXTO_BRILHO=0
_FUNDO_PISCA=0
_USO="
Uso: $(basename "$0") [palavra]
Obs.: Caso queira formatar uma frase, coloque-a entre aspas duplas.
"
if [ -z $1]
then
echo "$_USO"
exit
fi
clear
# Seleção das opções de cores do texto
echo "Escolha a opção de cor do texto:"
echo "
[30] PRETO (OU CINZA) [31] VERMELHO
[32] VERDE [33] MARROM (OU AMARELO)
[34] AZUL [35] ROXO
[36] CIANO [37] CINZA (OU BRANCO)
"
read COR
case $COR in
30) _COR_TEXTO=30 ;;
31) _COR_TEXTO=31 ;;
32) _COR_TEXTO=32 ;;
33) _COR_TEXTO=33 ;;
34) _COR_TEXTO=34 ;;
35) _COR_TEXTO=35 ;;
36) _COR_TEXTO=36 ;;
37) _COR_TEXTO=37 ;;
*) clear && echo "Opções de cores do texto entre 30 e 37."
sleep 3; clear; exit
;;
esac
clear
# Seleção das opções da cor de fundo
echo "Escolha a opção de cor de fundo do texto:"
echo "
[40] PRETO (OU CINZA) [41] VERMELHO
[42] VERDE [43] MARROM (OU AMARELO)
[44] AZUL [45] ROXO
[46] CIANO [47] CINZA (OU BRANCO)
"
read FUNDO
case $FUNDO in
40) _COR_FUNDO=40 ;;
41) _COR_FUNDO=41 ;;
42) _COR_FUNDO=42 ;;
43) _COR_FUNDO=43 ;;
44) _COR_FUNDO=44 ;;
45) _COR_FUNDO=45 ;;
46) _COR_FUNDO=46 ;;
47) _COR_FUNDO=47 ;;
*) clear && echo "Opções de cores de fundo entre 40 e 47."
sleep 3; clear; exit
;;
esac
clear
# Opção para mostrar o texto "brilhante"
echo "Mostrar cor do texto brilhante?"
echo "
[S]im [N]ão
"
read BRILHANTE
case $BRILHANTE in
S | s) _TEXTO_BRILHO=1 ;;
N | n) _TEXTO_BRILHO=0 ;;
*) clear && echo "Somente S ou N."
sleep 3; clear; exit
;;
esac
clear
# Opção para mostrar o fundo pisca-pisca
echo "Mostrar fundo PISCA-PISCA?"
echo "
[S]im [N]ão
"
read PISCA
case $PISCA in
S | s) _FUNDO_PISCA=5 ;;
N | n) _FUNSO_PISCA=0 ;;
*) clear && echo "Somente S ou N."
sleep 3; clear; exit
;;
esac
clear
# Formata opções de cor de fundo e cor do texto
texto_formatado="$_COR_FUNDO;$_COR_TEXTO"
# Testa as opções de 'fundo pisca-pisca' e 'texto brilhante'
test "$_TEXTO_BRILHO" = 1 && texto_formatado="$texto_formatado;1"
test "$_FUNDO_PISCA" = 5 && texto_formatado="$texto_formatado;5"
# Mostra formatação ao usuário
echo -e '{FONTE}33['"$texto_formatado"'m' "$1" '{FONTE}33[m'
Relatório Diario Sarg com Compactação!
SCRIPT PARA AUTOMAÇÃO NA CRIAÇÃO DE USUÁRIOS NO AMBIENTE LINUX.
zsh: Função para validação de IP (IPv4)
Números impares no intervalo entre 2 números
Nenhum comentário foi encontrado.
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Centralizar Logo com Transparência via ImageMagick
Removendo entradas de boot UEFI "fantasmas" via terminal
Atualizações de Segurança Automáticas no Debian
Como cortar as partes de um vídeo com passagens de áudio em branco
Uma pergunta bem simples mas não achei resposta (ainda) [RESOLVIDO] (2)
Tentativa de instalar Linux em um notebook HP 246 G6 (2)
O que você está ouvindo agora? [2] (228)









