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.