Slide 1
Most trusted JOB oriented professional program
DevOps Certified Professional (DCP)

Take your first step into the world of DevOps with this course, which will help you to learn about the methodologies and tools used to develop, deploy, and operate high-quality software.

Slide 2
DevOps to DevSecOps – Learn the evolution
DevSecOps Certified Professional (DSOCP)

Learn to automate security into a fast-paced DevOps environment using various open-source tools and scripts.

Slide 2
Get certified in the new tech skill to rule the industry
Site Reliability Engineering (SRE) Certified Professional

A method of measuring and achieving reliability through engineering and operations work – developed by Google to manage services.

Slide 2
Master the art of DevOps
Master in DevOps Engineering (MDE)

Get enrolled for the most advanced and only course in the WORLD which can make you an expert and proficient Architect in DevOps, DevSecOps and Site Reliability Engineering (SRE) principles together.

Slide 2
Gain expertise and certified yourself
Azure DevOps Solutions Expert

Learn about the DevOps services available on Azure and how you can use them to make your workflow more efficient.

Slide 3
Learn and get certified
AWS Certified DevOps Professional

Learn about the DevOps services offered by AWS and how you can use them to make your workflow more efficient.

previous arrow
next arrow

Linux Tutorials: Commands for Linux User

Spread the Knowledge

File Commands

List files in the directory:


List all files:

ls -a

Show directory you are currently working in:


Create a new directory:

mkdir [directory]

Remove a file:

rm [file_name] 

Remove a directory recursively:

rm -r [directory_name]

Recursively remove a directory without requiring confirmation:

rm -rf [directory_name]

Copy the contents of one file to another file:

cp [file_name1] [file_name2]

Recursively copy the contents of one file to a second file:

cp -r [directory_name1] [directory_name2]

Rename [file_name1] to [file_name2] with the command:

mv [file_name1] [file_name2]

Create a symbolic link to a file:

ln -s /path/to/[file_name] [link_name]

Create a new file using touch:

touch [file_name]

Show the contents of a file:

more [file_name]

or use the cat command:

cat [file_name]

Append file contents to another file:

cat [file_name1] >> [file_name2]

Display the first 10 lines of a file with head command:

head [file_name]

Show the last 10 lines of a file:

tail [file_name]

Encrypt a file:

gpg -c [file_name]

Decrypt a file:

gpg [file_name.gpg]

Show the number of words, lines, and bytes in a file using wc:


List number of lines/words/characters in each file in a directory with the xargs command:

ls | xargs wc

Cut a section of a file and print the result to standard output:

cut -d[delimiter] [filename]

Cut a section of piped data and print the result to standard output:

[data] | cut -d[delimiter]

Print all lines matching a pattern in a file:

awk '[pattern] {print $0}' [filename]

Overwrite a file to prevent its recovery, then delete it:

shred -u [filename]

Compare two files and display differences:

diff [file1] [file2]

Read and execute the file content in the current shell:

source [filename]

Sort file contents and print the result in standard output:

sort [options] filename

Store the command output in a file and skip the terminal output:

Directory Navigation

Move up one level in the directory tree structure:

cd ..

Change directory to $HOME:


Change location to a specified directory:

cd /chosen/directory

File Compression

Archive an existing file:

tar cf [compressed_file.tar] [file_name]

Extract an archived file:

tar xf [compressed_file.tar]

Create a gzip compressed tar file by running:

tar czf [compressed_file.tar.gz]

Compress a file with the .gz extension:

File Transfer

Copy a file to a server directory securely using the Linux scp command:

scp [file_name.txt] [server/tmp]

Synchronize the contents of a directory with a backup directory using the rsync command:

rsync -a [/your/directory] [/backup/] 

Users and Groups

See details about the active users:


Show last system logins:


Display who is currently logged into the system with the who command:


Show which users are logged in and their activity:


Add a new group by typing:

groupadd [group_name]

Add a new user:

adduser [user_name]

Add a user to a group:

usermod -aG [group_name] [user_name]

Temporarily elevate user privileges to superuser or root using the sudo command:

sudo [command_to_be_executed_as_superuser]

Delete a user:

userdel [user_name] 

Modify user information with:


Change directory group:

chgrp [group-name] [directory-name]

Package Installation

List all installed packages with yum:

yum list installed

Find a package by a related keyword:

yum search [keyword]

Show package information and summary:

yum info [package_name]

Install a package using the YUM package manager:

yum install [package_name.rpm]

Install a package using the DNF package manager:

dnf install [package_name.rpm]

Install a package using the APT package manager:

apt install [package_name]

Install an .rpm package from a local file:

rpm -i  [package_name.rpm]

Remove an .rpm package:

rpm -e [package_name.rpm]

Install software from source code:

tar zxvf [source_code.tar.gz]
cd [source_code]
make install

See a snapshot of active processes:


Show processes in a tree-like diagram:


Display a memory usage map of processes:


See all running processes:


Terminate a Linux process under a given ID:

kill [process_id]

Terminate a process under a specific name:

pkill [proc_name]

Terminate all processes labelled “proc”:

killall [proc_name]

List and resume stopped jobs in the background:


Bring the most recently suspended job to the foreground:


Bring a particular job to the foreground:

fg [job]

List files opened by running processes:


Catch a system error signal in a shell script:

trap "[commands-to-execute-on-trapping]" [signal]

Pause terminal or a Bash script until a running process is completed:


Run a Linux process in the background:

nohup [command] &

System Management and Information

Show system information:

uname -r 

See kernel release information:

uname -a  

Display how long the system has been running, including load average:


See system hostname:


Show the IP address of the system:

hostname -i 

List system reboot history:

last reboot 

See current time and date:


Query and change the system clock with:


Show current calendar (month and day):


List logged in users:


See which user you are using:


Show information about a particular user:

finger [username]

View or limit system resource amounts:

ulimit [flags] [limit]

Schedule a system shutdown:

shutdown [hh:mm]

Shut Down the system immediately:

shutdown now

Add a new kernel module:

modprobe [module-name]

Disk Usage

You can use the df and du commands to check disk space in Linux.

See free and used space on mounted systems:

df -h

Show free inodes on mounted filesystems:

df -i

Display disk partitions, sizes, and types with the command:

fdisk -l

See disk usage for all files and directory:

du -ah

Show disk usage of the directory you are currently in:

du -sh

Display target mount point for all filesystem:


Mount a device:

mount [device_path] [mount_point]

SSH Login

Connect to host as user:

ssh user@host

Securely connect to host via SSH default port 22:

ssh host

Connect to host using a particular port:

ssh -p [port] user@host

Connect to host via telnet default port 23:

telnet host

File Permission

Chown command in Linux changes file and directory ownership.

Assign read, write, and execute permission to everyone:

chmod 777 [file_name]

Give read, write, and execute permission to owner, and read and execute permission to group and others:

chmod 755 [file_name]

Assign full permission to owner, and read and write permission to group and others:

chmod 766 [file_name]

Change the ownership of a file:

chown [user] [file_name]

Change the owner and group ownership of a file:

chown [user]:[group] [file_name]


List IP addresses and network interfaces:

ip addr show

Assign an IP address to interface eth0:

ip address add [IP_address]

Display IP addresses of all network interfaces with:


See active (listening) ports with the netstat command:

netstat -pnltu

Show tcp and udp ports and their programs:

netstat -nutlp

Display more information about a domain:

whois [domain]

Show DNS information about a domain using the dig command:

dig [domain] 

Do a reverse lookup on domain:

dig -x host

Do reverse lookup of an IP address:

dig -x [ip_address]

Perform an IP lookup for a domain:

host [domain]

Show the local IP address:

hostname -I

Download a file from a domain using the wget command:

wget [file_name]

Receive information about an internet domain:

nslookup [domain-name]

Save a remote file to your system using the filename that corresponds to the filename on the server:

curl -O [file-url]


Assign an integer value to a variable:

let "[variable]=[value]"

Export a Bash variable:

export [variable-name]

Declare a Bash variable:

declare [variable-name]= "[value]"

List the names of all the shell variables and functions:


Display the value of a variable:

echo $[variable-name]

Shell Command Management

Create an alias for a command:

alias [alias-name]='[command]'

Set a custom interval to run a user-defined command:

watch -n [interval-in-seconds] [command]

Postpone the execution of a command:

sleep [time-interval] && [command]

Create a job to be executed at a certain time (Ctrl+D to exit prompt after you type in the command):

at [hh:mm]

Display a built-in manual for a command:

man [command]

Print the history of the commands you used in the terminal:


Linux Keyboard Shortcuts

Kill process running in the terminal:

Ctrl + C

Stop current process:

Ctrl + Z

The process can be resumed in the foreground with fg or in the background with bg.

Cut one word before the cursor and add it to clipboard:

Ctrl + W

Cut part of the line before the cursor and add it to clipboard:

Ctrl + U

Cut part of the line after the cursor and add it to clipboard:

Ctrl + K

Paste from clipboard:

Ctrl + Y

Recall last command that matches the provided characters:

Ctrl + R

Run the previously recalled command:

Ctrl + O

Exit command history without running a command:

Ctrl + G

Run the last command again:


Log out of current session:



file command is used to determine the type of a file. .file type may be of human-readable(e.g. ‘ASCII text’) or MIME type(e.g. ‘text/plain; charset=us-ascii’). This command tests each argument in an attempt to categorize it.

It has three sets of tests as follows:

  • filesystem test: This test is based on the result which returns from a stat system call. The program verifies that if the file is empty, or if it’s some sort of special file. This test causes the file type to be printed.
  • magic test: These tests are used to check for files with data in particular fixed formats.
  • language test: This test search for particular strings which can appear anywhere in the first few blocks of a file.
$ file
$ file name.jpeg
$ file Invoice.pdf
$ file exam.ods
$ file videosong.mp4
$ man file

‘cmp’ command in Linux with examples

cmp command in Linux/UNIX is used to compare the two files byte by byte and helps you to find out whether the two files are identical or not.

  • When cmp is used for comparison between two files, it reports the location of the first mismatch to the screen if difference is found and if no difference is found i.e the files compared are identical.
  • cmp displays no message and simply returns the prompt if the the files compared are identical.
$ cat sample.txt
This is a sample text file

$ cat sample1.txt
This is another sample file

$ cmp sample.txt sample1.txt
sample.txt sample1.txt differ: byte 10, line 1

# How to compare two files using cmp
$ cmp file1.txt file2.txt

# How to make cmp print differing bytes
$ cmp -b file1.txt  file2.txt

# How to make cmp skip some initial bytes from both files
$ cmp -i 10 file1.txt  file2.txt

# How to make cmp display byte position (and value) for all differing bytes
$ cmp -l file1.txt  file2.txt

# How to limit number of bytes to be compared
$ cmp -n 25  file1.txt  file2.txt

# How to display progress meter while using cmp command
$ pv file1.txt | cmp -l file3.txt > output.txt

# How to make 'cmp' suppress output
$ cmp -s file1.txt file2.txt

‘comm’ command in Linux with examples

comm compare two sorted files line by line and write to standard output; the lines that are common and the lines that are unique.

‘stat’ command in Linux with examples

stat is a command-line utility that displays detailed information about given files or file systems.

# Check Linux File Status. The easiest way to use stat is to provide it a file as an argument. The following command will display the size, blocks, IO blocks, file type, inode value, number of links and much more information about the file /var/log/syslog, as shown in the screenshot:
$ stat /var/log/syslog

# Check File System Status. In the previous example, stat command treated the input file as a normal file, however, to display file system status instead of file status, use the -f option.
$ stat -f /var/log/syslog

# You can also provide a directory/filesystem as an argument as shown.
$ stat -f /

# Since Linux supports links (symbolic and hard links), certain files may have one or more links, or they could even exist in a filesystem. To enable stat to follow links, use the -L flag as shown.
$ stat -L /

# Print Information in Terse Form. The -t option can be used to print the information in terse form.
$ stat -t /var/log/syslog

Customizing the environment

# set – set statemtent display a complete list of all environment variable
# PATH =$PATH:/usr/xpg4/bin – Adding new value to old values
# PS1 =”C> “ – To Change the prompt
# PS1=’[$PWD] ‘ – To Change the prompt to pwd
# alias cp=”cp –I” – To Set the alias in bash
# history – To See the history
# IFS – Field Separators for commands and arguments
# !! – Repeat Previous commands
# !2 – Repeat commands 2 from history output
# !-2 – Execute the commands prior to previous one
# !v – Execture very last commands beginning withg v
# $_ – Using last arugement of previous commands
# mkdir raj
# cd $_
Rajesh Kumar
4 1 vote
Article Rating
Notify of
Inline Feedbacks
View all comments
Would love your thoughts, please comment.x