Introduction
FIGlet is a utility for creating large characters out of ordinary screen characters. It's often used in terminal sessions to create eye-catching text, banners, or headers. This project will guide you through the process of using it to generate text, and customizing your output with different fonts.

Getting Started with FIGlet
FIGlet (File Input, Graphical Let) is a terminal-based tool that transforms ordinary text into large ASCII art characters. It's particularly useful for creating attention-grabbing headers in terminal scripts, log files, or simply to add some visual flair to your terminal sessions.
Installing and Running FIGlet
In this lab environment, FIGlet has already been installed for you. Let's verify it's working correctly:
Open a terminal by clicking on the terminal icon in the dock or using the menu.
Let's create your first FIGlet text. Type the following command and press Enter:
figlet Hello World
You should see output similar to this:
_ _ _ _ __ __ _ _
| | | | ___| | | ___ \ \ / /__ _ __| | __| |
| |_| |/ _ \ | |/ _ \ \ \ /\ / / _ \| '__| |/ _` |
| _ | __/ | | (_) | \ V V / (_) | | | | (_| |
|_| |_|\___|_|_|\___/ \_/\_/ \___/|_| |_|\__,_|
The command has converted the plain text "Hello World" into a large ASCII art display. This is the basic functionality of FIGlet.
- Try creating your own name or a short message:
figlet Your Name
FIGlet works by converting each character in your text to a larger representation made up of standard ASCII characters. This makes it easy to create visually interesting text that stands out in terminal output.
Working with Different FIGlet Fonts
FIGlet becomes even more interesting when you explore its various font options. The program comes with numerous built-in fonts that completely change the appearance of your text.
Viewing Available Fonts
- To see all the fonts available on your system, run the following command:
showfigfonts
This command displays a sample of each available font. The output is quite long, so you may need to scroll through it to see all the options.
- If you want to see just the font names without the examples, you can use:
find /usr/share/figlet -name "*.flf" | sort
This command lists all the FIGlet font files available on your system.
Using Different Fonts
- To use a specific font, use the
-foption followed by the font name. Let's try the "slant" font:
figlet -f slant Hello World
You should see output similar to this:
__ __ ____ _ __ __ __
/ / / /__ / / /___ | | / /___ _____/ /___/ /
/ /_/ / _ \/ / / __ \ | | /| / / __ \/ ___/ / __ /
/ __ / __/ / / /_/ / | |/ |/ / /_/ / / / / /_/ /
/_/ /_/\___/_/_/\____/ |__/|__/\____/_/ /_/\__,_/
- Try a few more fonts to see the variety available. Here's the "big" font:
figlet -f big Hello
Output:
_ _ _ _
| | | | ___| | | ___
| |_| |/ _ \ | |/ _ \
| _ | __/ | | (_) |
|_| |_|\___|_|_|\___/
- And here's the "standard" font (the default):
figlet -f standard Hello
Output:
_ _ _ _
| | | | ___| | | ___
| |_| |/ _ \ | |/ _ \
| _ | __/ | | (_) |
|_| |_|\___|_|_|\___/
FIGlet fonts are stored as .flf files in the /usr/share/figlet directory. Each file defines how to draw each character in that particular style.
Customizing FIGlet Output
FIGlet offers several options to customize how your text appears beyond just changing fonts. Let's explore some of these customization options.
Adjusting Width
- By default, FIGlet will use as much space as needed for your text. To make FIGlet fit the text into a specific width, use the
-woption followed by the number of columns:
figlet -w 50 "Narrow Text"
Output:
_ _
| \ | | __ _ _ __ _ __ _____ __
| \| |/ _` | '__| '__/ _ \ \ /\ / /
| |\ | (_| | | | | | (_) \ V V /
|_| \_|\__,_|_| |_| \___/ \_/\_/
_____ _
|_ _|____ _| |_
| |/ _ \ \/ / __|
| | __/> <| |_
|_|\___/_/\_\\__|
This command ensures the output fits within 50 columns.
- Try a different width:
figlet -w 80 "Wide Text Example"
Output:
__ ___ _ _____ _
\ \ / (_) __| | ___ |_ _|____ _| |_
\ \ /\ / /| |/ _` |/ _ \ | |/ _ \ \/ / __|
\ V V / | | (_| | __/ | | __/> <| |_
\_/\_/ |_|\__,_|\___| |_|\___/_/\_\\__|
_____ _
| ____|_ ____ _ _ __ ___ _ __ | | ___
| _| \ \/ / _` | '_ ` _ \| '_ \| |/ _ \
| |___ > < (_| | | | | | | |_) | | __/
|_____/_/\_\__,_|_| |_| |_| .__/|_|\___|
|_|
Centering Text
- To center the FIGlet output in your terminal, use the
-coption:
figlet -c "Centered Text"
The text will appear centered within your terminal width.
- You can combine options. Try centering text with a specific font:
figlet -c -f slant "Center Slant"
Output (centered in your terminal):
______ __ _____ __ __
/ ____/__ ____ / /____ _____ / ___// /___ _____ / /_
/ / / _ \/ __ \/ __/ _ \/ ___/ \__ \/ / __ `/ __ \/ __/
/ /___/ __/ / / / /_/ __/ / ___/ / / /_/ / / / / /_
\____/\___/_/ /_/\__/\___/_/ /____/_/\__,_/_/ /_/\__/
Other Options
- FIGlet also supports text direction. Try right-to-left display:
figlet -R "Right to Left"
Output:
_ __ _ _ ____ _ _ _
| | ___ / _| |_ | |_ ___ | _ \(_) __ _| |__ | |_
| | / _ \ |_| __| | __/ _ \ | |_) | |/ _` | '_ \| __|
| |__| __/ _| |_ | || (_) | | _ <| | (_| | | | | |_
|_____\___|_| \__| \__\___/ |_| \_\_|\__, |_| |_|\__|
|___/
- Try left-to-right display (the default):
figlet -L "Left to Right"
FIGlet provides a variety of customization options that can be combined to create exactly the look you want. These options can be viewed by typing:
figlet -h
The help output shows all available options and how to use them.
Creating a Personalized Terminal Banner
One of the most common uses for FIGlet is creating custom welcome banners that display whenever you open a terminal. This adds a personal touch to your terminal sessions and can include useful information or just a fun greeting.
Creating a Simple Banner Script
- First, let's create a simple shell script to display a banner. Open a text editor to create the script:
nano ~/banner.sh
- Add the following content to the file:
#!/bin/bash
figlet -f slant "Welcome to Linux"
echo "Today is $(date)"
echo "----------------"
echo ""
Save the file by pressing
Ctrl+O, thenEnter, and exit withCtrl+X.Make the script executable:
chmod +x ~/banner.sh
- Run the script to see your banner:
~/banner.sh
You should see something like this:
_ __ __ __
| | / /__ / /________ ____ ___ ___ / /_____
| | /| / / _ \/ / ___/ __ \/ __ `__ \/ _ \ / __/ __ \
| |/ |/ / __/ / /__/ /_/ / / / / / / __/ / /_/ /_/ /
|__/|__/\___/_/\___/\____/_/ /_/ /_/\___/ \__/\____/
__ _
/ / (_)___ __ ___ __
/ / / / __ \/ / / / |/_/
/ /___/ / / / / /_/ /> <
/_____/_/_/ /_/\__,_/_/|_|
Today is Thu Mar 6 10:44:55 CST 2025
----------------
Adding the Banner to Your Shell Startup
- To display this banner whenever you open a new terminal, you can add the script to your shell's startup file. Since you're using ZSH, we'll modify the
.zshrcfile:
nano ~/.zshrc
- Add the following line at the end of the file:
~/banner.sh
Save and exit the editor with
Ctrl+O,Enter, andCtrl+X.To test this change without opening a new terminal, you can source the
.zshrcfile:
source ~/.zshrc
Your custom banner should display immediately.
Customizing Your Banner Further
- Let's make your banner more personalized. Edit the banner script again:
nano ~/banner.sh
- Modify it to include your name or a custom message:
#!/bin/bash
figlet -f slant "Hello, $(whoami)!"
echo "Welcome to Linux - $(date +%A), $(date +%B) $(date +%d)"
echo "----------------"
echo "System: $(uname -s) $(uname -r)"
echo ""
Save and exit the editor.
Open a new terminal and you should see a personalized banner with your username, the current date in a nicer format, and some system information.

This way, every time you open a new terminal, you'll be greeted with your custom banner. Feel free to further customize it with colors, more system information, or different FIGlet fonts.
Summary
In this lab, you have learned how to use FIGlet to create eye-catching ASCII art text for your terminal. You now know how to:
- Generate large text using the basic FIGlet command
- Work with different fonts to change the appearance of your text
- Customize your output with width adjustments and text alignment
- Create and implement a personalized terminal banner
FIGlet is a simple but powerful tool for adding visual interest to terminal outputs, shell scripts, log files, or any text-based interface. The skills you have learned can be applied to make your terminal experience more personalized and visually appealing.
For further exploration, you might want to look into related tools like "toilet" (a color version of FIGlet) or "cowsay" for even more terminal fun. You can also create your own FIGlet fonts if you want to get really creative.



