Generally, operating systems have 2 interfaces GUI(Graphical User Interface) and CLI(Command Line Interface) and the same is the case with Linux Based Operating Systems. Linux Operating Systems are generally packed with terminal emulator packages for CLI based functioning and Desktop environment packages for GUI based functioning. Some common ones are listed below:
- MATE terminal
- Xfce/Xfce server Desktop
- KDE plasma 5
- cinnamon Desktop
- MATE Desktop
So being one of the Linux based Operating Systems Kali comes packed with a few of these terminals and Desktop environments. By default, the terminal of Kali 2020.2 Linux is Qterminal and the Desktop environment is Xfce/Xfce server.
CLI(Command Line Interface) vs GUI(Graphical User Interface)
Now most of us think that when we have Graphical User Interface what is the need for Command Line Interface. Our hardware understands instructions in the form of bits(0 or 1), which are to be processed by the kernel in the form of system calls and those system calls are to be made by some code or some commands. So in order to work with them, it is necessary to have a good hands-on Command Line interface. And when we host a server over Linux, there we only have Command Line Interface without any GUI based environment. So in order to work there, we should have a good command on Linux commands which could be done with the help of Linux Terminals.
Though in many cases GUI is better still, if it is the case of Linux then the terminal and Command Line interface plays a vital role as Linux has many tools that are command based and have no GUI interface.
So concluding from this, it depends on what is the task which is to be performed. Sometimes a task could be performed easily with GUI while other times it could be performed with feasibility through terminal.
Terminals vs Shells
Many people confuse between a shell and a terminal emulator. They both are different. Linux based Operating Systems come pre-packed with some shells. In these shells, we need to input the commands, then these shells send these commands to the processor for processing, and then it returns back output to the terminal. Now, Terminal emulator packages allow us to input commands to shell and it reflects the output by the shell.
In simple words, the shell is a program that is responsible for the execution of an instruction and returning the output while the terminal is responsible to send instructions to the shell by taking input from the user and displaying the output of the instruction to the user.
Examples of shells:
Working with Kali Linux Terminal
1. Customizing the terminal. In order to customize the kali Linux Terminal. Go to the File menu and select the preferences option. It has a lot of options to customize your terminal, customize the terminal as per your convenience.
2. Executing a command through terminal. To execute a command in the terminal, just enter a command there and provide the appropriate input, the terminal will execute the command through the shell and will return the output. Just type the following lines in the terminal.
echo "This is a terminal" pwd
3. Using comments in terminal. To put a comment in the terminal we use “#” character. Following is the example of a comment.
#this is a comment.
- Difference Between Arch Linux and Kali Linux
- Difference Between Ubuntu and Kali Linux
- Difference Between Fedora and Kali Linux
- Difference Between OpenSUSE and Kali Linux
- Kali Linux - Password Cracking Tool
- Kali Linux Tools
- Introduction to Kali Linux
- How to Change the Mac Address in Kali Linux Using Macchanger?
- How to Hack WPA/WPA2 WiFi Using Kali Linux?
- Kali Linux - Default Passwords
- Kali Linux - Crunch Utility
- How to Create Reverse Shells with Netcat in Kali Linux?
- Kali Linux - Command Line Essentials
- How to Change the username or userID in Kali Linux?
- Kali Linux - Exploitation Tools
- Kali Linux - Information Gathering Tools
- Kali Linux - Vulnerability Analysis Tools
- Kali Linux - Web Penetration Testing Tools
- Kali Linux - Wireless Attack Tools
- How to Change Root Password in Kali Linux?
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.