Linux Commands

Essential Linux Commands for Beginners

Basic Linux/Unix Commands with Examples


The ‘alias’ is another name for a command. If no argument is given, it shows current aliases. Aliases can be used for short names of commands. For example, you might use the cd command frequently. You can create an alias for it:

$ alias CD=’cd Desktop’

Displays the calendar of the current month.

$ cal

November 2020

Su Mo Tu We Th Fr Sa

1 2 3 4 5 6 7

8 9 10 11 12 13 14

15 16 17 18 19 20 21

22 23 24 25 26 27 28

29 30

The ‘cat’ command is actually a concatenator but can be used to view the contents of a file.

$ cat /etc/passwd









Change the current working directory to the directory provided as argument. If no argument is given to ‘cd’, it changes the directory to the user’s home directory. In the given example change the directory to ‘/’.

$ cd /


The chgrp will change the group of the file.

$ chgrp red file1


The chown will change the owner of the file.

$ chown visitor file1


This command clears the screen.

$ clear


Copy files and directories. If the source is a file, and the destination (file) name does not exit, then source is copied with new name i.e. with the name provided as the destination.

$ copy source destination

If the destination is a directory, then the file is copied with its original name in that directory.

$ cp backup.txt folder1

$ ls -l folder1

total 0

-rw-r–r–. 1 root root 0 Nov 8 02:28 backup.txt

Displays current time and date.

$ date

Sun Nov 8 02:33:35 IST 2020


The df reports file system usage. For example,

$ df

Filesystem 1K-blocks Used Available Use% Mounted on

devtmpfs 480828 0 480828 0% /dev

tmpfs 497840 0 497840 0% /dev/shm

tmpfs 497840 8684 489156 2% /run

tmpfs 497840 0 497840 0% /sys/fs/cgroup

/dev/mapper/centos-root 17811456 4615632 13195824 26% /

/dev/sda1 1038336 216240 822096 21% /boot

tmpfs 99572 28 99544 1% /run/user/1000

/dev/sr0 4669162 4669162 0 100% /run/media/pardhan/CentOS 7 x86_64


The du command determines disk usage of a file. If the argument given to it is a directory, then it will list disk usage of all the files and directories recursively under that directory:

$ du

0 ./.mozilla/extensions

0 ./.mozilla/plugins

0 ./.mozilla

0 ./.cache/gdm

8 ./.cache/imsettings

0 ./.cache/libgweather

0 ./.cache/evolution/addressbook/trash

0 ./.cache/evolution/addressbook

0 ./.cache/evolution/calendar/trash

0 ./.cache/evolution/calendar

0 ./.cache/evolution/mail/trash

$ du /etc/passwd

4 /etc/passwd


This command will echo whatever you provide it.

$ echo “hello world”

hello worlds


The fdisk is a tool for getting partition information, and for adding and removing partitions. The fdisk tool requires super user privileges. To list all the partitions of all the hard drives available:

$ fdisk -l

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk label type: dos

Disk identifier: 0x0009329d

Device Boot Start End Blocks Id System

/dev/sda1 * 2048 2099199 1048576 83 Linux

/dev/sda2 2099200 41943039 19921920 8e Linux LVM

Disk /dev/mapper/centos-root: 18.2 GB, 18249416704 bytes, 35643392 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mapper/centos-swap: 2147 MB, 2147483648 bytes, 4194304 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

The fdisk is an interactive tool to edit the partition table. It takes a device (hard disk) as an argument, whose partition table needs to be edited.

$ fdisk /dev/sda

Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.

Be careful before using the write command.


The ‘grep’ command searches for a pattern in a file (or standard input). It supports regular expressions. It returns a line if it matches the pattern in that line. So, if we wish to find the lines containing the word ‘nologin’, we use ‘grep’ as follows:

$ grep nologin /etc/passwd


15. file

The file command determines the file type of a given file. For example:

$ file /etc/passwd

/etc/passwd: ASCII text


This command in Linux is used to instruct the hardware to stop all the CPU functions. Basically, it reboots or stops the system.

$ halt

Displays the first few lihaltnes of a file. By default, the ‘head’ command displays the first 10 lines of a file. But with -n option, the number of lines to be viewed can be specified.

$ head /etc/passwd












This command shows the commands you have entered on your terminal so far.

$ history

1 SU –

2 su –

3 alias CD=’cd Desktop’

4 clear

5 cal

6 cat /etc/passwd

7 cd

8 cd /

9 clear

10 cd

11 chown visior file

12 useradd visitor

13 ll

14 touch file1

15 useradd visitor

16 chown visitor file1

17 grpadd

18 groupadd red

19 su –

20 date

21 df

22 dn

23 du

24 du /etc/passwd

25 echo “hello world”

26 fdisk -l

27 su –

28 su –

29 head /etc/passwd

30 history

With almost every command, ‘–help’ option shows usage summary for that command.

$ date –help

Usage: date [OPTION]… [+FORMAT]

or: date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]

Display the current time in the given FORMAT, or set the system date.

This command prints user and groups (UID and GID) of the current user.

$ id root

uid=0(root) gid=0(root) groups=0(root)

Info documents are sometimes more elaborate than the man pages. But for some commands, info pages are just the same as man pages.

$ info date


Displays information about the users who logged in and out of the system. A similar command is ‘lastb’ that shows the last unsuccessful login attempts. But this command must be run as root otherwise you would get an error saying permission denied.

$ lastb

root pts/0

root pts/0

Sun Nov 8 07:45 – 07:45 (00:00)

Sat Nov 7 11:29 – 11:29 (00:00)

btmp begins Sat Nov 7 11:29:39 2020


The ln command is used in linux to create links. Links are a kind of shortcuts to other files. The general form of command is:


List files and/or directories. If no argument is given, the contents of current directory are shown.

$ ls

anaconda-ks.cfg backup.txt folder1 initial-setup-ks.cfg

To see a command’s manual page, man command is used.

$ man date


To create a directory, the ‘mkdir’ command is used.

$ mkdir clado


Move files or directories. The ‘mv’ command works like ‘cp’ command, except that the original file is removed. But, the mv command can be used to rename the files (or directories).

$ mv source destination

$ mv folder1 clado


The ‘netstat’ is a command used to check the network statistics of the system. It will list the current network connections, routing table information, interface statistics, masquerade connections and a lot more information.

$ netstat | head

Active Internet connections (w/o servers)

Proto Recv-Q Send-Q Local Address Foreign Address State

Active UNIX domain sockets (w/o servers)

Proto RefCnt Flags Type State I-Node Path

unix 2 [ ]

unix 3 [ ]

unix 2 [ ]

unix 5 [ ]

unix 24 [ ]

unix 3 [ ]


DGRAM 14215

DGRAM 9194

DGRAM 9196

DGRAM 9207

DGRAM 9209








‘pwd’ command prints the absolute path to current working directory.

$ pwd



reboot command is used restart or reboot the system.

$ reboot


remove command is used to remove a file or directory. A directory must be removed recursively with -r option.

$ rm –r clado


To check the status of a file. This provides more detailed information about a file than ‘ls -l’ output.

$ stat file1

File: ‘file1’

Size: 0 Blocks: 0 IO Block: 4096 regular empty file

Device: fd00h/64768d Inode: 17668947 Links: 1

Access: (0664/-rw-rw-r–) Uid: ( 1000/pardhan) Gid: ( 1000/pardhan)

Context: unconfined_u:object_r:user_home_t:s0

Access: 2020-11-08 01:09:53.005082195 +0530

Modify: 2020-11-08 01:09:53.005082195 +0530

Change: 2020-11-08 01:09:53.005082195 +0530

Birth: –


sudo (Super User DO) command in Linux is generally used as a prefix of some command that only superuser are allowed to run.The -V (version) option causes sudo to print the version number and exit.

$ sudo -V

Sudo version 1.8.23

Sudoers policy plugin version 1.8.23

Sudoers file grammar version 46

Sudoers I/O plugin version 1.8.23


The ‘tail’ command shows the last 10 lines by default, and -n option is available as well.

$ tail -n 4 /etc/passwd





[pardhan@MyFirstLinuxVM ~]$


For creating an empty file, use the touch command.

$ touch file3

$ ls -l

total 4

drwxrwxr-x. 2 pardhan pardhan 6 Nov 8 09:28 clado

-rw-rw-r–. 1 pardhan pardhan 0 Nov 8 01:09 file1

-rw-rw-r–. 1 pardhan pardhan 0 Nov 8 10:13 file2

-rw-rw-r–. 1 pardhan pardhan 0 Nov 8 10:14 file3


Displays current terminal.

$ tty



w command is used to check which users are logged in to the system, and what command they are executing at that particular time.

$ w

10:30:14 up 1:08, 2 users, load average: 0.34, 0.13, 0.09


pardhan :0 :0 09:23 ?xdm? 1:57 0.52s /usr/libe

pardhan pts/0 :0 09:27 6.00s 0.73s 0.27s w


Word count

This command counts lines, words and letters of the input given to it.

$ wc /etc/passwd

43 88 2275 /etc/passwd


This command gives a one line description about the command. It can be used as a quick reference for any command.

$ whatis cal


cal (1)


cal (1p)




– display a calendar

– print a calendar

This command reveals the user who is currently logged in.

$ whoami



Leave a Comment

Your email address will not be published. Required fields are marked *