Pesquisa de site

Linux Fun - Como criar banners de texto ASCII no terminal


Recentemente, explicamos como exibir aleatoriamente arte ASCII predefinida no terminal Linux, usando um programa chamado ASCII-Art-Splash-Screen. Neste artigo, mostraremos como criar seus próprios banners de texto ASCII atraentes a partir de texto simples, usando dois utilitários de linha de comando chamados FIGlet e TOIlet.

Leia também: 20 comandos engraçados do Linux para se divertir no terminal

FIGlet é um utilitário de linha de comando simples para criar banners de texto ASCII ou letras grandes a partir de texto comum, enquanto TOIlet (um subcomando em figlet) é um utilitário de linha de comando para criar caracteres grandes e coloridos a partir de texto comum.

Como instalar e usar ferramentas Figlet e Toilet no Linux

Para usar as ferramentas FIGlet e TOIlet juntas, primeiro você precisa instalá-las em seu sistema Linux usando o gerenciador de pacotes padrão, conforme mostrado.

sudo apt install figlet toilet    [On Debian/Ubuntu]
sudo yum install figlet toilet    [On CentOS/RHEL]
sudo dnf install figlet toilet    [On Fedora 22+]

Uma vez instalado, a forma básica de usar o figlet é fornecendo como argumento o texto que você deseja transformar em banner ou texto grande, conforme mostrado.

figlet TecMint.com

 _____         __  __ _       _                        
|_   _|__  ___|  \/  (_)_ __ | |_   ___ ___  _ __ ___  
  | |/ _ \/ __| |\/| | | '_ \| __| / __/ _ \| '_ ` _ \ 
  | |  __/ (__| |  | | | | | | |_ | (_| (_) | | | | | |
  |_|\___|\___|_|  |_|_|_| |_|\__(_)___\___/|_| |_| |_|

Definir justificativa de saída

Se você deseja que a saída seja criada no centro, use o sinalizador -c conforme mostrado.

figlet -c TecMint.com

             _____         __  __ _       _                        
            |_   _|__  ___|  \/  (_)_ __ | |_   ___ ___  _ __ ___  
              | |/ _ \/ __| |\/| | | '_ \| __| / __/ _ \| '_ ` _ \ 
              | |  __/ (__| |  | | | | | | |_ | (_| (_) | | | | | |
              |_|\___|\___|_|  |_|_|_| |_|\__(_)___\___/|_| |_| |_|

Além disso, use também -l para definir a saída para a esquerda ou -r para imprimi-la à direita.

Definir largura de saída

Você também pode controlar a largura de saída com a opção -w, a largura padrão é 80 colunas.

figlet -w 100 I Love TecMint.com

 ___   _                     _____         __  __ _       _                        
|_ _| | |    _____   _____  |_   _|__  ___|  \/  (_)_ __ | |_   ___ ___  _ __ ___  
 | |  | |   / _ \ \ / / _ \   | |/ _ \/ __| |\/| | | '_ \| __| / __/ _ \| '_ ` _ \ 
 | |  | |__| (_) \ V /  __/   | |  __/ (__| |  | | | | | | |_ | (_| (_) | | | | | |
|___| |_____\___/ \_/ \___|   |_|\___|\___|_|  |_|_|_| |_|\__(_)___\___/|_| |_| |_|

Se você tiver um terminal mais largo, poderá usar toda a largura do seu terminal com a opção -t.

figlet -t TecMint.com

Adicionar espaço entre os caracteres de saída

Para uma saída mais clara, você pode usar o sinalizador -k para adicionar um pequeno espaço entre os caracteres impressos: verifique a diferença entre a saída acima e abaixo, conforme mostrado.

figlet -t -k I Love TecMint.com

 ___   _                        _____            __  __  _         _                            
|_ _| | |     ___ __   __ ___  |_   _|___   ___ |  \/  |(_) _ __  | |_     ___  ___   _ __ ___  
 | |  | |    / _ \\ \ / // _ \   | | / _ \ / __|| |\/| || || '_ \ | __|   / __|/ _ \ | '_ ` _ \ 
 | |  | |___| (_) |\ V /|  __/   | ||  __/| (__ | |  | || || | | || |_  _| (__| (_) || | | | | |
|___| |_____|\___/  \_/  \___|   |_| \___| \___||_|  |_||_||_| |_| \__|(_)\___|\___/ |_| |_| |_|

Ler a entrada de um arquivo

Em vez de digitar seu texto na linha de comando, você pode ler o texto de um arquivo usando a opção -p conforme mostrado.

echo "I wish I could chmod 644 my Girlfriend" >girlfriend.txt
figlet -kp < girlfriend.txt

 ___             _       _       ___                      _      _ 
|_ _| __      __(_) ___ | |__   |_ _|   ___  ___   _   _ | |  __| |
 | |  \ \ /\ / /| |/ __|| '_ \   | |   / __|/ _ \ | | | || | / _` |
 | |   \ V  V / | |\__ \| | | |  | |  | (__| (_) || |_| || || (_| |
|___|   \_/\_/  |_||___/|_| |_| |___|  \___|\___/  \__,_||_| \__,_|
                                                                   
       _                            _    __    _  _    _  _   
  ___ | |__   _ __ ___    ___    __| |  / /_  | || |  | || |  
 / __|| '_ \ | '_ ` _ \  / _ \  / _` | | '_ \ | || |_ | || |_ 
| (__ | | | || | | | | || (_) || (_| | | (_) ||__   _||__   _|
 \___||_| |_||_| |_| |_| \___/  \__,_|  \___/    |_|     |_|  
                                                              
                     ____  _        _   __        _                   _  
 _ __ ___   _   _   / ___|(_) _ __ | | / _| _ __ (_)  ___  _ __    __| | 
| '_ ` _ \ | | | | | |  _ | || '__|| || |_ | '__|| | / _ \| '_ \  / _` | 
| | | | | || |_| | | |_| || || |   | ||  _|| |   | ||  __/| | | || (_| | 
|_| |_| |_| \__, |  \____||_||_|   |_||_|  |_|   |_| \___||_| |_| \__,_|

Alterar fonte de saída

Você pode especificar outra fonte, usando o sinalizador -f, a fonte é um arquivo .flf ou .tlf armazenado em /usr/ compartilhar/figlet. Você pode verificar as fontes disponíveis como esta.

ls /usr/share/figlet/

646-ca2.flc  646-es.flc   646-kr.flc   646-yu.flc  8859-9.flc	   
646-ca.flc   646-fr.flc   646-no2.flc  8859-2.flc  ascii12.tlf	   
646-cn.flc   646-gb.flc   646-no.flc   8859-3.flc  ascii9.tlf	  
646-cu.flc   646-hu.flc   646-pt2.flc  8859-4.flc  banner.flf	   
646-de.flc   646-irv.flc  646-pt.flc   8859-5.flc  bigascii12.tlf  
646-dk.flc   646-it.flc   646-se2.flc  8859-7.flc  bigascii9.tlf  
646-es2.flc  646-jp.flc   646-se.flc   8859-8.flc  big.flf	   

Em seguida, use uma fonte específica, por exemplo, eu uso font slant.tlf conforme mostrado.

figlet -f slant "Sudo I Love You"

   _____           __         ____   __                       __  __           
  / ___/__  ______/ /___     /  _/  / /   ____ _   _____      \ \/ /___  __  __
  \__ \/ / / / __  / __ \    / /   / /   / __ \ | / / _ \      \  / __ \/ / / /
 ___/ / /_/ / /_/ / /_/ /  _/ /   / /___/ /_/ / |/ /  __/      / / /_/ / /_/ / 
/____/\__,_/\__,_/\____/  /___/  /_____/\____/|___/\___/      /_/\____/\__,_/

Use TOIlet para criar banners de texto ASCII coloridos

O comando toilet também é usado para transformar texto em caracteres ASCII grandes. A maneira mais simples de executá-lo é a seguinte.

toilet TecMint.com

mmmmmmm               m    m   "             m                               
   #     mmm    mmm   ##  ## mmm    m mm   mm#mm          mmm    mmm   mmmmm 
   #    #"  #  #"  "  # ## #   #    #"  #    #           #"  "  #" "#  # # # 
   #    #""""  #      # "" #   #    #   #    #           #      #   #  # # # 
   #    "#mm"  "#mm"  #    # mm#mm  #   #    "mm    #    "#mm"  "#m#"  # # #  

Para mudar para uma fonte específica, use a opção -f, ela também lê fontes da mesma fonte do figlet.

toilet -kf script TecMint.com

 ______       ,__ __                                       
(_) |        /|  |  |  o                                   
    | _   __  |  |  |      _  _  _|_   __   __   _  _  _   
  _ ||/  /    |  |  |  |  / |/ |  |   /    /  \_/ |/ |/ |  
 (_/ |__/\___/|  |  |_/|_/  |  |_/|_/o\___/\__/   |  |  |_/

Várias opções de figlet que vimos acima também se aplicam ao banheiro. Para obter mais informações, consulte suas páginas de manual.

man figlet
man toilet

Leia também: Neofetch – mostra informações do sistema Linux com logotipo de distribuição

Resumo

Neste artigo, examinamos dois utilitários de linha de comando para transformar texto em grandes caracteres de texto ASCII, úteis para criar banners ou mensagens. Compartilhe sua opinião sobre esses comandos por meio do formulário de feedback abaixo.