A Linux command is a particular instruction that is written in the Linux terminal to execute specific tasks. Commands can be used for navigating files and directories, changing permissions, installing packages and configuring applications, and so on. Advanced Linux commands are somewhat more powerful than basic commands. A few keystrokes of an advanced command can perform tasks in seconds that may take hours while using GUI.
In this article, I will give you a cheat sheet for the Advanced Linux Commands with free downloadable links.
Download Advanced Linux Commands Cheat Sheet
Advanced Linux Commands Cheat Sheet
Advanced Linux commands can be categorized into various types such as File Manipulation, Network Commands Hardware Based Commands, etc. Available advanced Linux commands are:
Advanced Linux Commands for File Management
Here is a short list of advanced Linux file management commands:
Command |
Description |
scp |
Copies files between host over a network |
rsync -a |
Synchronizes files and directories between two different locations |
ls -al |
Displays list of all files and directories including hidden files |
ln |
Creates symbolic(symlink) links between files and directories |
file |
Identifies the type of a file |
rm -rf |
Recursively deletes all the files and sub-directories |
more |
Views the content of a file on one screen at a time |
xargs |
Builds and execute command lines from standard input |
gpg -c |
Symmetrically encrypts files |
gpg -d |
Symmetrically decrypts files |
cmp |
Compares two files byte by byte |
comm |
Compares two sorted files line by line |
stat |
Displays file or file system status |
split |
Splits a file into pieces |
cut |
Removes sections from each line of a file |
paste |
Merges lines of files |
install |
Copies files and set attributes |
jed |
Simple text editor |
vi |
Visual text editor |
sed |
Stream editor for filtering and transforming text |
Advanced Linux Commands for User Management
Here is the list of commands for adding new user, modifying existing user, permissoin management and other advanced task related to user management:
Command |
Description |
last |
Displays the list of previously logged in users |
adduser |
Creates a new user on the system |
usermod |
Modifies attributes of an existing user |
deluser |
Deletes an existing user from the system |
delgroup |
Deletes an existing group from the system |
groups |
Prints group membership of a user |
Advanced Linux System Commands
Linux system commands are used in a wide range of functions. They are:
Command |
Description |
chage |
Changes user password expiry information |
fsck |
File system consistency check and repair |
sestatus |
Shows SELinux status information |
iptables |
Administration tool for IPv4 packet filtering and NAT |
service |
Starts, stops and restarts services |
Shell Built-in Commands
Shell built-in commands are not executable like the system commands. However, these commands are useful for performing similar tasks.
Command |
Description |
declare |
Declares variables and give them attributes |
enable |
Enables and disables shell built-ins |
exec |
Replaces the current shell with another command |
jobs |
Lists active jobs and their status |
Advanced Commands for Process Management
To control, monitor and manipulate processes of a Linux system, the below advanced process related commands are available in Linux:
Command |
Description |
pmap |
Reports the memory map of a process |
top |
Shows real-time dynamic display of the running processes |
kill pid |
Terminates specific process |
pkill |
Terminates one or more processes based on attributes |
bg |
Resumes a suspended job in the background |
fg |
Brings a background job to the foreground |
renice |
Changes the priority of a running system |
pgrep |
Searches for a process by name |
pstree |
Shows system processes in a hierarchical tree structure |
Advanced Commands for File Compression
Here is a short list of advanced Linux file compression commands:
Command |
Description |
tar -cf |
Creates an archive file and compresses one or more file into it |
tar -xf |
Extracts files and directories from a tar file |
tar -zcvf |
Creates an archive tar file and compresses one or more files while showing the progress |
gunzip |
Decompresses the compressed files |
rar |
Create, manage RAR archive files |
unrar |
Extract files from RAR archives |
7z |
Create, manage and extract files from 7z archives |
Advanced Hardware Based Commands
Use the below hardware-based commands on Linux to interact with computer hardware from the terminal window:
Command |
Description |
dmesg |
Displays bootup messages |
Ishw |
Lists hardware information of the system |
Isblk |
Lists information about available block devices |
free |
Displays information about system’s memory |
lspci |
Displays list of all PCI bushes and devices |
lsusb |
Displays information about USB bushes and devices |
demidecode |
Reports the system’s BIOS information |
biosdecode |
Displays system’s BIOS firmware information |
hdparm -I /dev/sda |
Displays information about first hard drive |
hwinfo –short |
Displays summary of hardware information |
wodim |
Burns CDs, DVDs and Blu-ray discs |
badblocks |
Checks damaged or unreadable blocks in storage |
x86info -a |
Displays general information about CPU |
Advanced Commands for Networking
Here is a short list of advanced Linux networking commands:
Command |
Description |
ip addr show |
Displays information about network interfaces |
ip address add |
Adds a new IP address to a network interface |
ifconfig |
Configures network interfaces with specific IP address |
ping host |
Tests connectivity to a host |
whois |
Retrieves information about a domain |
dig |
Retrieves DNS records of a domain |
traceroute |
Traces the route of a host |
ssh |
Secures encrypted communication |
netstat -pnltu |
Displays information of active TCP and UDP connections |
host |
Obtains information about a domain name or IP address |
hostname -i |
Displays IP address of current hostname |
telnet |
Establishes remote connection |
finger |
Displays user information |
ftp |
File Transfer Protocol client |
sftp |
Secures File Transfer Protocol client |
nslookup |
Queries Internet name servers interactively |
Advanced Commands for Disk Management
Here is a short list of advanced Linux disk management commands:
Command |
Description |
df -h |
Displays free and used spaces on the file system |
df -i |
Displays inode usage on the file system |
fdisk -l |
Lists available disk partition and their sizes |
du -sh |
Shows total size and of a directory or file |
findmnt |
Shows list of currently mounted file systems |
mount |
Mounts a device to specific directory |
umount |
Unmounts a currently mounted file system |
tree |
Displays directory structure in a tree format |
Advanced Commands for Kernel & Module
Here is a short list of advanced kernel and module related commands in Linux:
Command |
Description |
uname -a |
Display kernel version |
ismod |
Check currently loaded kernel module |
modinfo |
Display information of about a kernel module |
modprobe –remove |
Unload a kernel module from memory |
Advanced Miscellaneous Commands
This section contains many other useful commands regardless of their category. A glance at these may save hours of learning commands from the beginning.
Command |
Description |
vmstat |
Reports virtual memory statistics |
alias |
Creates a shortcut for a longer command |
unalias |
Removes previously created alias |
ufw |
Manages firewall rules |
tr |
Translate or delete characters from a text stream |
tty |
Print the file name of the terminal connected to standard input |
time |
Measure execution time of a command |
printenv |
Print values of all environment variables |
make |
Builds executable programs and libraries from source code |
whereis |
Locate binary, source and manual page of a command |
which |
Returns the pathname of file |
unset |
Removes value of an environment variable |
tee |
Read Standard Input and writes it both to Standard Output and other file |
awk |
Extracts and manipulates text data |
crontab |
Instructions for running scheduled job |
chroot |
Changes the root directory for the current process |
timedatectl |
Changes system clock and time-zone |
at |
Schedule commands to run at a specific time |
bash |
A shell command interpreter |
egrep |
Search files for lines matching a pattern using extended regular expressions |
env |
Display and modify environment variables |
getend |
Print the end of a file |
lsof |
List open files and their associated processes |
mkfs |
Create a file system on a device |
neofetch |
Displays system information in the terminal |
uptime |
Shows system uptime and load averages |
screen |
Terminal multiplexer with session management |
patch |
Apply changes to files using a diff file |
batch |
Scheduled jobs to run at a later time when system resources are available |
strace |
Trace system calls and signals of a program and its child processes |
curl |
Transfer data from or to a server using variety of protocols |
rsyslog |
Manages system logs and forwarding them to other systems |
journalctl |
View and manipulate logs from the system journal |
source |
Read and execute file content in the current shell |
let |
Assign an integer value to a variable |
uniq |
Remove or identify duplicate lines of a file |
set |
List name of all shell variables and functions |
Conclusion
In conclusion, the above commands will help a power user to do his job within the quickest amount of time. On the other hand, the list can be useful for learners as well to get hands-on experience with advanced Linux commands. No matter whether the list helps you or not feel free to comment below whatever comes to your mind just after seeing the list.
People Also Ask
What 5 commands a Linux admin should know?
Here are five essential Linux commands that every admin should know:
- ls: This command is used to list the contents of a directory.
- cd: This command is used to change the current working directory. It is used to navigate the file system and move between directories.
- grep: This command is used to search for text in files.
- ps: This command is used to display information about running processes. It is used to display the status of the processes that are running on the system. You can use ps to display the process ID, CPU usage, memory usage, and other details of the running processes.
- chmod: This command is used to change the permissions of files and directories. It is used to modify the access permissions of files and directories.
What is cheat sheet in Linux?
A cheat sheet is a concise set of notes used for quick reference. In the context of Linux, a cheat sheet is a document that contains a list of commonly used commands and their syntax. It is a useful resource for beginners and experienced users alike who want to quickly look up a command or its options.
What commands are typically included in an advanced Linux command cheat sheet?
Commands featured in such a cheat sheet might cover various aspects, including but not limited to:
- File manipulation (e.g., sed, awk, find, tar)
- System monitoring and management (e.g., top, ps, kill, systemctl)
- Networking (e.g., netstat, ping, traceroute, nmap)
- User and group administration (e.g., usermod, groupadd, chown, sudo)
Are there risks in using advanced commands without understanding them fully?
Yes, using advanced commands without understanding their impact can lead to unintended consequences, such as data loss, system instability, or security vulnerabilities. It’s crucial to learn about the commands thoroughly and practice in a controlled environment.