Tags de Cores e formatação no Terminal
Publicado por Maxwell Aguiar Silva (última atualização em 03/12/2021)
[ Hits: 671 ]
Esse script permite utilizar tags para formata a saída de texto no terminal.
Verifique o código para ver todas as tags disponíveis.
Utilização:
# Importa a função.
. lib-simple-tags
# Exemplo 1
cat <<EOF | simple-tags
[b]Bold[/b]
[i]Italic[/i]
[u]Underline[/u]
Normal [negative]Negativo[/negative] Normal
[red]Vermelho[reset]
[red][#white]Vermelho fundo branco[reset]
[blink]Piscando[/blink]
[reset]
EOF
# Exemplo 2
simple-tags "[strike]Traçado[/strike]"
#!/bin/bash function simple-tags( ) { # Tabela de substituição das tags ( ECMA-48 ). local tags_table tags_table=$( cat <<-EOF "[reset]" "\\e[0m" "[b]" "\\e[1m" "[bold]" "\\e[1m" "[faint]" "\\e[2m" "[i]" "\\e[3m" "[italic]" "\\e[3m" "[u]" "\\e[4m" "[underline]" "\\e[4m" "[blink]" "\\e[5m" "[fast-blink]" "\\e[6m" "[negative]" "\\e[7m" "[hidden]" "\\e[8m" "[strike]" "\\e[9m" "[primary-font]" "\\e[10m" "[default-font]" "\\e[10m" "[font-1]" "\\e[11m" "[font-2]" "\\e[12m" "[font-3]" "\\e[13m" "[font-4]" "\\e[14m" "[font-5]" "\\e[15m" "[font-6]" "\\e[16m" "[font-7]" "\\e[17m" "[font-8]" "\\e[18m" "[font-9]" "\\e[19m" "[fraktur]" "\\e[20m" "[du]" "\\e[21m" "[double-underline]" "\\e[21m" "[/b]" "\\e[22m" "[/bold]" "\\e[22m" "[/faint]" "\\e[22m" "[/i]" "\\e[23m" "[/italic]" "\\e[23m" "[/fraktur]" "\\e[23m" "[/u]" "\\e[24m" "[/underline]" "\\e[24m" "[/du]" "\\e[24m" "[/double-underline]" "\\e[24m" "[/blink]" "\\e[25m" "[/negative]" "\\e[27m" "[/hidden]" "\\e[28m" "[/strike]" "\\e[29m" "[black]" "\\e[30m" "[red]" "\\e[31m" "[green]" "\\e[32m" "[yellow]" "\\e[33m" "[blue]" "\\e[34m" "[magenta]" "\\e[35m" "[cyan]" "\\e[36m" "[white]" "\\e[37m" "[custom-color]" "\\e[38m" "[default-color]" "\\e[39m" "[#black]" "\\e[40m" "[#red]" "\\e[41m" "[#green]" "\\e[42m" "[#yellow]" "\\e[43m" "[#blue]" "\\e[44m" "[#magenta]" "\\e[45m" "[#cyan]" "\\e[46m" "[#white]" "\\e[47m" "[#custom-color" "\\e[48m" "[#default-color]" "\\e[49m" "[br]" "\\n" EOF ) # Troca as tags pelos códigos do terminal. function replace-tags() { # Dados de entrada. local result=$* while IFS=$'\t' read -r str_from str_to; do str_from=${str_from//\"/} str_to=${str_to//\"/} result=${result//"$str_from"/"$str_to"} done <<< "$tags_table" echo -e "$result" } # Lê a entrada de dados. local result=$* if [[ "$#" -ge 1 ]]; then replace-tags "$*" else while read -r line; do replace-tags "$line" done fi }
Pegando IP externo shell script
Apagar arquivos maliciosos de pastas compartilhadas pelo Samba periodicamente
sbogrupo - ferramenta de consulta à base de dados do sbopkg
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
verificar se uma fonte já esta instalada (30)
Configuração de impressora térmica (0)
Linux mint está congelando/tr... (4)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta