Command line, also known as CLI, console, terminal, shell.
Difference
-
Console: physical device to interact with computer — computer, keyboard, mouse.
-
Terminal: text input & output environment. A program that acts as a wrapper and we can enter commands that computer processes. Can install or uninstall, or install many terminals in your computer.
-
Shell: A program that acts as command-line interpreter. It processes commands and outputs the results. Eg: Bash, Powershell, Zsh, Fish. Shells also work as programming languages, as we can build scripts to make computer execute a certain task.
The terminal is the program in which the shell will run. Both are independent.
-
CLI (command line interface): the interface in which we enter commands for the computer to process. Practically the same as terminal.
-
GUI (graphical user interface): user can see things & click on & computer execute the corresponding task.
Why use terminal?
-
More efficient than using GUI. A command line can excute some tasks that may require many clicks using GUI.
-
Automate tasks: build scripts for repetitive tasks.
-
Sometimes CLI is the only way to interact with computer.
-
It’s cool and fun lol.
Notes
-
Bash is recommended as it’s the most standard & commonly used.
-
Shells & terminals are customizable. Plugins like OhMyZsh or Starship allow to customize easier.
Most useful commands
-
pwd
: print working directory - show where we are -
ls
: show contents of the directory you’re currently in -
cd ..
: go to the directory that contains the current directory -
mkdir cat
: make directory named cat -
rmdir cat
: remove directory -
touch test.md
: create a file in current directory -
rm test.md
: delete file -
:q!
: exit editor -
ctrl c: exit the process the terminal is running
-
ctrl shift c/v to copy and paste
-
clear: clear previous content
-
tab: autocompletion