Linux Jargon Buster: What are GUI, CLI and TUI in Linux?

When you start using Linux and following Linux-based websites and forums, you’ll often come across terms like GUI, CLI and sometimes TUI.

This chapter of Linux Jargon Buster briefly explains these terms so that you, as a (new) Linux user, can understand the context better when these acronyms are used.

To be honest, the terms GUI, CLI and TUI are not exclusive to Linux. These are generic computing terms that you’ll find used in non-Linux discussions, as well.

GUI – Graphical User Interface

“GUI” is probably the most common term you’ll come across on It’s FOSS because we focus on desktop Linux users and try to cover the easy-to-use graphical methods and applications.

A GUI application or graphical application is basically anything that you can interact with using your mouse, touchpad or touch screen. You have icons and other visual prompts that you can activate with your mouse pointer to access the functionalities.

GIMP 2.10 interface
GIMP: A GUI app for photo editing

In a Linux distribution, a desktop environment provides the graphical interface for you to interact with your system. Then you can use GUI applications such as GIMP, VLC, Firefox, LibreOffice, and file manager for various tasks.

GUI has made computing easier for the average user.

CLI – Command Line Interface

CLI is basically a command line program that accepts inputs to perform a certain function. Any application that you can use via commands in the terminal falls into this category.

Apt Cache Search Names Only
apt-cache is a CLI tool for interacting with APT cache on Debian-based systems

Early computers didn’t have mouse to interact with the operating system, only keyboards.

If you think that’s difficult you should know that the earlier computers didn’t even have a screen to see what was being typed; they had actual paper printers to display the typed commands. I have never used such a computer, or even seen one. The closest thing I used were the microcontroller kits during my studies.

Ken Thompson And Dennis Ritchie At Pdp 11
Ken Thompson And Dennis Ritchie Working on developing UNIX operating system on PDP 11 computer. | Image Credit

Is CLI relevant these days? Absolutely. Commands always have benefits, especially when you are dealing with the core functioning and configuration of the operating system, such as setting up a firewall, managing a network or package management.

You may have a GUI-based application to do the same task, but commands give you more granular access to those features. In any case, you’ll find that GUI applications also interact with the operating system with commands (used in their code).

Handbrake GUI app uses FFMPEG CLI tool underneath

Many popular GUI applications are often based on CLI tools. Consider Handbrake for example. It’s a popular open source media converter that uses the FFMPEG command line tool underneath.

Quite evidently, using command line tools is not as easy as the graphical ones. Don’t worry. Unless you have specific needs, you should be able to use your Linux system graphically. However, knowing the basic Linux commands helps a great deal.

TUI – Terminal User Interface

TUI is also known as Text-based User Interface. This is the most uncommon term of the three. TUI is basically part GUI and part CLI. Confused? Let me explain it for you.

You already know that early computers used CLI. Before the advent of GUI, the text-based user interface provided a very basic kind of graphical interaction in the terminal. You have more visuals and could use mouse and keyboard to interact with the application.

Nnn File Browser
nnn File Browser in terminal

TUI stands for text-based user interface or terminal user interface. Text-based because primarily, you have a bunch of text on the screen and terminal user interface because they are used only in the terminal.

TUI applications are not well-known to many users, but there are a bunch of them. Terminal based web browsers are good example of TUI programs. Terminal-based games also fall into this category.

cmus User Interface
CMUS is terminal based music player

You may come across TUI when you are installing multimedia codecs in Ubuntu where you have to accept EULA or make a choice.

TUI apps are not as user-friendly as GUI applications, and they often have a learning curve involved but they are a bit easier to use than the command line tools.

In the end …

TUI apps are often also considered as CLI applications because they are restricted to the terminal. In my opinion, it’s up to you if you consider them different from CLI.

I hope you liked this part of Linux Jargon Buster. If you have any suggestions for topics in this series, please let me know in the comments and I’ll try to cover them in the future.

Similar Posts

  • Now I can understand what’s TUI. I’ve never heard of it.

    I think ‘htop’ has a TUI interface. Am I right?

  • One thing you miss is that TUI was the interface of MS-DOS. One of the most popular OS for at least 10 years. Most if not all programs before windows were TUI programs. Examples of this are WordPerfect, Microsoft Word for DOS, Quatro Pro Spread sheet ect. Many of these programs had windows, menus, dialog boxes, and used the mouse.

  • CLI

    I started coding in 1968 for the U.S. Army. I never herd the term CLI until Windows came along in version 95. I am sure CLI started in Abhishek’s mind much earlier. SAY WHEN HE WAS IN diapers.

    When AIX came along while I worked at IBM. We called it the Shell. When Ken Thompson, Dennis Ritchie invented Unix at AT&T. They called it the Shell.

    To have a Johnny come lately named Abhishek Prakash. Rename the shell to CLI is just bloviating and self agrandisement.

    • Why all the hostility? I remember it being called the CLI in 1984 on the Commodore Amiga.

      And if you’re going to use big words at least spell them right.


    • Hey Frank, Abhishek Prakash didn’t “rename the shell to CLI”. I think you’re confused because you didn’t read the article, but even more so because you probably will need to use and understand a thesaurus. It gives other words you might want to use to describe the same thing. I’m not telling you where you’ll find that mystical creature though! You’ll have to find it yourself!!

    • The Unix shell and its successors (csh, ksh, bash, …) is just one example of a CLI. Before the Xerox Alto was developed at Xerox PARC in the 1970s, all computers that had terminals at all had CLIs. I personally worked on minicomputers from 4 different manufacturers in the 1970s and 1980s, all of which had their own CLI.
      AIX was a derivative of Unix, so of course it used one of the Unix shells (usually ksh).

    • Guys, don’t feed the trolls… ;) This guy is desperate for some attention, let him starve to death… ;)