A text based I/O interface b/w user and the kernel.

Terminal emulation is software that emulates the function of a terminal. It allows the use of text-based programs within a graphical user interface (GUI). There are also so-called command-line interfaces (CLI) that run as additional terminals in one terminal

The most commonly used shell in Linux is the Bourne-Again Shell (BASH)

Besides Bash, there also exist other shells like Tcsh/CshKshZshFish shell and others.

Taking Help

  1. man <tool>
  2. <tool> - -help (some tools may not give info with, but give with -h)
  3. apropos <keyword> (This command list all the commands that has the keyword in the usage)

System Information

Commands Description
whoami Displays current username.
id Returns users identity
hostname Sets or prints the name of current host system.
uname Prints basic information about the operating system name and system hardware.
pwd Returns working directory name.
ifconfig The ifconfig utility is used to assign or to view an address to a network interface and/or configure network interface parameters.
ip Ip is a utility to show or manipulate routing, network devices, interfaces and tunnels.
netstat Shows network status.
ss Another utility to investigate sockets.
ps Shows process status.
who Displays who is logged in.
env Prints environment or sets and executes command.
lsblk Lists block devices.
lsusb Lists USB devices
lsof Lists opened files.
lspci Lists PCI devices.

File Navigation

pwd - Prints working directory

cd - Change working directory

cd - - we can quickly jump back to the directory we were last in

cd .. - Jump to the parent directory

ls - list storage

ls -i - Shows index (or inode) number of the files