The Ultimate A To Z List of Linux Commands | Linux Command...

The Ultimate A To Z List of Linux Commands | Linux Command Line Reference


Short Bytes: Linux distributions can leverage an extensive range of commands to accomplish various tasks. For most Linux distros, Bash (bourne again shell) is the default command-line interface or shell used to execute these commands. In this A to Z list of Linux commands, we have tried to include as many commands as possible which can be run using bash.

CLIs (command-line interface) have existed since ages. We can find their roots in the first instance of CLI built for “interfacing with computers over teletype machines in the 1950s.” It allows a user to interact with the system, taking character-based command inputs from the keyboard or a script. However, CLI is just an interface, the main task is done by a program called command language interpreter.

In the past, we compiled the list of commands for the CMD command-line interpreter in Microsoft Windows, you can take a look at it below:

Also Read: The Ultimate A to Z List Of Windows CMD Commands You Need To Know

It’s a known fact that the command line interface (CLI), also known as the shell, is an integral part of the digital lives of various Linux users even when the graphical desktop environments on Linux systems have become quite user-friendly.

The first piece of text you see when you land on the shell is called prompt. It signifies system’s readiness to execute commands. The shell is accessed using the Terminal – a hardware device used to input data into, and displaying device from. However, the terminal application you see on your Linux systems is an emulator that replicates the jobs of a real-world terminal.

Many people often confuse the terms shell and terminal. Take the example of a car; the body of the car is the terminal and the dashboard can be considered as the shell where you perform various operations like acceleration, reverse, shifting, etc. The car responds to your actions performed using the dashboard. Similarly, the terminal displays responses for the commands executed using the shell or CLI.

Is Linux CLI case-sensitive?

The answer is, yes. If you try to run LS instead of ls, it would display an error. There are some advantages of using a case-sensitive command line. The computers that existed in earlier decades weren’t fast enough, it was favorable to compare identical strings instead of normalizing the upper and lower cases. This continued and became a habit, even though today’s machines are way faster and efficient. It also gives people the flexibility over the choice of the command name.

A-Z List of Linux Commands

So, In this post, I have tried to compile a list of commands used in various Linux distributions. This has been possible with inputs from Ubuntu manual, SS64, and Linux Dev Center. As you might be knowing, some or many of these commands may not work on your distribution. Running those commands may require you to install additional packages or it’s just that the commands aren’t meant to work on your system.

The descriptions of these Linux commands are based on their manual pages. To access the man page:

man command_name

For eg: man cat

If you find any discrepancy, please feel free to contact for any correction.

Linux Commands – A

Command Description
accept  Accept or Reject jobs to a destination, such as a printer.
access  Check a user’s RWX permission for a file.
aclocal GNU autoconf too
aconnect   ALSA sequencer connection manager.
acpi  Show information about the Advanced Configuration and Power Interface.
acpi_available  Check if ACPI functionality exists on the system.
acpid  Informs user-space programs about ACPI events.
addr2line  Used to convert addresses into file names and line numbers.
addresses  Formats for internet mail addresses.
agetty  An alternative Linux Getty
alias  Create an alias for Linux commands
alsactl  Access advanced controls for ALSA soundcard driver.
amidi  Perform read/write operation for ALSA RawMIDI ports.
amixer  Access CLI-based mixer for ALSA soundcard driver.
anacron  Used to run commands periodically.
aplay  Sound recorder and player for CLI.
aplaymidi  CLI utility used to play MIDI files.
apm  Show Advanced Power Management (APM) hardware info on older systems.
apmd  Used to handle events reported by APM BIOS drivers.
apropos  Shows the list of all man pages containing a specific keyword
apt  Advanced Package Tool, a package management system for Debian and derivatives.
apt-get  Command-line utility to install/remove/update packages based on APT system.
aptitude  Another utility to add/remove/upgrade packages based on the APT system.
ar  A utility to create/modify/extract from archives.
arch  Display print machine hardware name.
arecord  Just like aplay, it’s a sound recorder and player for ALSA soundcard driver.
arecordmidi  Record standard MIDI files.
arp  Used to make changes to the system’s ARP cache
as  A portable GNU assembler.
aspell  An interactive spell checker utility.
at  Used to schedule command execution at specified date & time, reading commands from an input file.
atd  Used to execute jobs queued by the at command.
atq  List a user’s pending jobs for the at command.
atrm  Delete jobs queued by the at command.
audiosend  Used to send an audio recording as an email.
aumix  An audio mixer utility.
autoconf  Generate configuration scripts from a TEMPLATE-FILE and send the output to standard output.
autoheader  Create a template header for configure.
automake  Creates GNU standards-compliant Makefiles from template files
autoreconf  Update generated configuration files.
autoscan  Generate a preliminary
autoupdate  Update a file to newer autoconf.
awk  Used to find and replace text in a file(s).

Linux Commands – B

Command Description
badblocks  Search a disk partition for bad sectors.
banner  Used to print characters as a poster.
basename  Used to display filenames with directoy or suffix.
bash  GNU Bourne-Again Shell.
batch  Used to run commands entered on a standard input.
bc  Access the GNU bc calculator utility.
bg  Send processes to the background.
biff  Notify about incoming mail and sender’s name on a system running comsat server.
bind  Used to attach a name to a socket.
bison  A GNU parser generator, compatible with yacc.
break  Used to exit from a loop (eg: for, while, select).
builtin  Used to run shell builtin commands, make custom functions for commands extending their functionality.
bzcmp  Used to call the cmp program for bzip2 compressed files.
bzdiff  Used to call the diff program for bzip2 compressed files.
bzgrep  Used to call grep for bzip2 compressed files.
bzip2  A block-sorting file compressor used to shrink given files.
bzless  Used to apply ‘less’ (show info one page at a time) to bzip2 compressed files.
bzmore  Used to apply ‘more’ (an inferior version of less) to bzip2 compressed files.

Linux Commands – C

Command Description
cal  Show calendar.
cardctl  Used to control PCMCIA sockets and select configuration schemes.
cardmgr  Keeps an eye on the added/removes sockets for PCMCIA devices.
case  Execute a command conditionally by matching a pattern.
cat  Used to concatenate files and print them on the screen.
cc  GNU C and C++ compiler.
cd  Used to change directory.
cdda2wav  Used to rip a CD-ROM and make WAV file.
cdparanoia  Record audio from CD more reliably using data-verification algorithms.
cdrdao  Used to write all the content specified to a file to a CD all at once.
cdrecord  Used to record data or audio compact discs.
cfdisk  Show or change the disk partition table.
chage  Used to change user password information.
chattr  Used to change file attributes.
chdir  Used to change active working directory.
chfn  Used to change real user name and information.
chgrp  Used to change group ownership for file.
chkconfig  Manage execution of runlevel services.
chmod  Change access permission for a file(s).
chown  Change the owner or group for a file.
chpasswd  Update password in a batch.
chroot  Run a command with root privileges.
chrt  Alter process attributed in real-time.
chsh  Switch login shell.
chvt  Change foreground virtual terminal.
cksum  Perform a CRC checksum for files.
clear  Used to clear the terminal window.
cmp  Compare two files (byte by byte).
col  Filter reverse (and half-reverse) line feeds from the input.
colcrt  Filter nroff output for CRT previewing.
colrm  Remove columns from the lines of a file.
column  A utility that formats its input into columns.
comm  Used to compare two sorted files line by line.
command  Used to execute a command with arguments ignoring shell function named command.
compress  Used to compress one or more file(s) and replacing the originals ones.
continue  Resume the next iteration of a loop.
cp  Copy contents of one file to another.
cpio  Copy files from and to archives.
cpp  GNU C language processor.
cron  A daemon to execute scheduled commands.
crond  Same work as cron.
crontab  Manage crontab files (containing schedules commands) for users.
csplit  Split a file into sections on the basis of context lines.
ctags  Make a list of functions and macro names defined in a programming source file.
cupsd  A scheduler for CUPS.
curl  Used to transfer data from or to a server using supported protocols.
cut  Used to remove sections from each line of a file(s).
cvs  Concurrent Versions System. Used to track file versions, allow storage/retrieval of previous versions, and enables multiple users to work on the same file.

Linux Commands – D

Command Description
date  Show system date and time.
dc  Desk calculator utility.
dd  Used to convert and copy a file, create disk clone, write disk headers, etc.
ddrescue  Used to recover data from a crashed partition.
deallocvt  Deallocates kernel memory for unused virtual consoles.
debugfs  File system debugger for ext2/ext3/ext4
declare  Used to declare variables and assign attributes.
depmod  Generate modules.dep and map files.
devdump  Interactively displays the contents of device or file system ISO.
df  Show disk usage.
diff  Used to compare files line by line.
diff3  Compare three files line by line.
dig  Domain Information Groper, a DNS lookup utility.
dir  List the contents of a directory.
dircolors  Set colors for ‘ls’ by altering the LS_COLORS environment variable.
dirname  Display pathname after removing the last slash and characters thereafter.
dirs  Show the list of remembered directories.
disable  Restrict access to a printer.
dlpsh  Interactive Desktop Link Protocol (DLP) shell for PalmOS.
dmesg  Examine and control the kernel ring buffer.
dnsdomainname  Show the DNS domain name of the system.
dnssec-keygen  Generate encrypted Secure DNS keys for a given domain name.
dnssec-makekeyset  Produce domain key set from one or more DNS security keys generated by dnssec-keygen.
dnssec-signkey  Sign a secure DNS keyset with key signatures specified in the list of key-identifiers.
dnssec-signzone  Sign a secure DNS zonefile with the signatures in the specified list of key-identifiers.
doexec  Used to run an executable with an arbitrary argv list provided.
domainname  Show or set the name of current NIS (Network Information Services) domain.
dosfsck  Check and repair MS-DOS file systems.
du  Show disk usage summary for a file(s).
dump  Backup utility for ext2/ext3 file systems.
dumpe2fs  Dump ext2/ext3/ext4 file systems.
dumpkeys  Show information about the keyboard driver’s current translation tables.

Linux Commands – E

Command Desription
e2fsck  Used to check ext2/ext3/ext4 file systems.
e2image  Store important ext2/ext3/ext4 filesystem metadata to a file.
e2label  Show or change the label on an ext2/ext3/ext4 filesystem.
echo  Send input string(s) to standard output i.e. display text on the screen.
ed  GNU Ed – a line-oriented text editor.
edquota  Used to edit filesystem quotas using a text editor, such as vi.
egrep  Search and display text matching a pattern.
eject  Eject removable media.
elvtune  Used to set latency in the elevator algorithm used to schedule I/O activities for specified block devices.
emacs Emacs text editor command line utility.
enable  Used to enable/disable shell builtin commands.
env  Run a command in a modified environment. Show/set/delete environment variables.
envsubst  Substitute environment variable values in shell format strings.
esd  Start the Enlightenment Sound Daemon (EsounD or esd). Enables multiple applications to access the same audio device simultaneously.
esd-config Manage EsounD configuration.
esdcat  Use EsounD to send audio data from a specified file.
esdctl  EsounD control program.
esddsp  Used to reroute non-esd audio data to esd and control all the audio using esd.
esdmon  Used to copy the sound being sent to a device. Also, send it to a secondary device.
esdplay  Use EsounD system to play a file.
esdrec  Use EsounD to record audio to a specified file.
esdsample  Sample audio using esd.
etags  Used to create a list of functions and macros from a programming source file. These etags are used by emacs. For vi, use ctags.
ethtool  Used to query and control network driver and hardware settings.
eval  Used to evaluate multiple commands or arguments are once.
ex  Interactive command
exec  An interactive line-based text editor.
exit  Exit from the terminal.
expand  Convert tabs into spaces in a given file and show the output.
expect  An extension to the Tcl script, it’s used to automate interaction with other applications based on their expected output.
export  Used to set an environment variable.
expr  Evaluate expressions and display them on standard output.

Linux Commands – F

Command Description
factor  Display prime factors of specified integer numbers.
false  Do nothing, unsuccessfully. Exit with a status code indicating failure.
fc-cache  Make font information cache after scanning the directories.
fc-list  Show the list of available fonts.
fdformat  Do a low-level format on a floppy disk.
fdisk  Make changes to the disk partition table.
fetchmail  Fetch mail from mail servers and forward it to the local mail delivery system.
fg  Used to send a job to the foreground.
fgconsole  Display the number of the current virtual console.
fgrep  Display lines from a file(s) that match a specified string. A variant of grep.
file  Determine file type for a file.
find  Do a file search in a directory hierarchy.
finger  Display user data including the information listed in .plan and .project in each user’s home directory.
fingerd  Provides a network interface for the finger program.
flex  Generate programs that perform pattern-matching on text.
fmt  Used to convert text to a specified width by filling lines and removing new lines, displaying the output.
fold  Wrap input line to fit in a specified width.
for  Expand words and run commands for each one in the resultant list.
formail  Used to filter standard input into mailbox format.
format  Used to format disks.
free  Show free and used system memory.
fsck  Check and repair a Linux file system
ftp  File transfer protocol user interface.
ftpd  FTP server process.
function  Used to define function macros.
fuser  Find and kill a process accessing a file.

Linux Commands – G

Command Description
g++  Run the g++ compiler.
gawk  Used for pattern scanning and language processing. A GNU implementation of AWK language.
gcc  A C and C++ compiler by GNU.
gdb  A utility to debug programs and know about where it crashes.
getent  Shows entries from Name Service Switch Libraries for specified keys.
getkeycodes  Displays the kernel scancode-to-keycode mapping table.
getopts  A utility to parse positional parameters.
gpasswd  Allows an administrator to change group passwords.
gpg  Enables encryption and signing services as per the OpenPGP standard.
gpgsplit  Used to split an OpenPGP message into packets.
gpgv  Used to verify OpenPGP signatures.
gpm  It enables cut and paste functionality and a mouse server for the Linux console.
gprof  Shows call graph profile data.
grep  Searches input files for a given pattern and displays the relevant lines.
groff  Serves as the front-end of the groff document formatting system.
groffer  Displays groff files and man pages.
groupadd  Used to add a new user group.
groupdel  Used to remove a user group.
groupmod  Used to modify a group definition.
groups  Show the group(s) to which a user belongs.
grpck  Verifies the integrity of group files.
grpconv  Creates a gshadow file from a group or an already existing gshadow.
gs  Invokes Ghostscript, and interpreter and previewer for Adobe’s PostScript and PDF languages.
gunzip  A utility to compress/expand files.
gzexe  Used compress executable files in place and have them automatically uncompress and run at a later stage.
gzip  Same as gzip.

Linux Commands – H

Command Description
halt  Command used to half the machine.
hash  Shows the path for the commands executed in the shell.
hdparm  Show/configure parameters for SATA/IDE devices.
head  Shows first 10 lines from each specified file.
help  Display’s help for a built-in command.
hexdump  Shows specified file output in hexadecimal, octal, decimal, or ASCII format.
history  Shows the command history.
host  A utility to perform DNS lookups.
hostid  Shows host’s numeric ID in hexadecimal format.
hostname  Display/set the hostname of the system.
htdigest  Manage the user authentication file used by the Apache web server.
htop  An interactive process viewer for the command line.
hwclock  Show or configure the system’s hardware clock.

Linux Commands – I

Command Description
iconv  Convert text file from one encoding to another.
id  Show user and group information for a specified user.
if  Execute a command conditionally.
ifconfig  Used to configure network interfaces.
ifdown  Stops a network interface.
ifup  Starts a network interface.
imapd  An IMAP (Interactive Mail Access Protocol) server daemon.
import  Capture an X server screen and saves it as an image.
inetd  Extended internet services daemon, it starts the programs that provide internet services.
info  Used to read the documentation in Info format.
init  Systemd system and service manager.
insmod  A program that inserts a module into the Linux kernel.
install  Used to copy files to specified locations and set attributions during the install process.
iostat  Shows statistics for CPU, I/O devices, partitions, network filesystems.
ip  Display/manipulate routing, devices, policy, routing and tunnels.
ipcrm  Used to remove System V interprocess communication (IPC) objects and associated data structures.
ipcs  Show information on IPC facilities for which calling process has read access.
iptables  Administration tool for IPv4 packet filtering and NAT.
iptables-restore  Used to restore IP tables from data specified in the input or a file.
iptables-save  Used to dump IP table contents to standard output.
isodump  A utility that shows the content iso9660 images to verify the integrity of directory contents.
isoinfo  A utility to perform directory like listings of iso9660 images.
isosize  Show the length of an iso9660 filesystem contained in a specified file.
isovfy  Verifies the integrity of an iso9660 image.
ispell  A CLI-based spell-check utility.

Linux Commands – J

Command Description
jobs  Show the list of active jobs and their status.
join  For each pair of input lines, join them using a command field and display on standard output.

Linux Commands – K

Command Description
kbd_mode  Set a keyboard mode. Without arguments, shows the current keyboard mode.
kbdrate  Reset keyboard repeat rate and delay time.
kill  Send a kill (termination) signal to one more processes.
killall  Kills a process(es) running a specified command.
killall5  A SystemV killall command. Kills all the processes excluding the ones which it depends on.
klogd  Control and prioritize the kernel messages to be displayed on the console, and log them through syslogd.
kudzu  Used to detect new and enhanced hardware by comparing it with existing database. Only for RHEL and derivates.

Linux Commands – L

Command Description
last  Shows a list of recent logins on the system by fetching data from /var/log/wtmp file.
lastb  Shows the list of bad login attempts by fetching data from /var/log/btmp file.
lastlog  Displays information about the most recent login of all users or a specified user.
ld  The Unix linker, it combines archives and object files. It then puts them into one output file, resolving external references.
ldconfig  Configure dynamic linker run-time bindings.
ldd  Shows shared object dependencies.
less  Displays contents of a file one page at a time. It’s advanced than more command.
lesskey  Used to specify key bindings for less command.
let  Used to perform integer artithmetic on shell variables.
lftp  An FTP utility with extra features.
lftpget  Uses lftop to retrieve HTTP, FTP, and other protocol URLs supported by lftp.
link  Create links between two files. Similar to ln command.
ln  Create links between files. Links can be hard (two names for the same file) or soft (a shortcut of the first file).
loadkeys  Load keyboard translation tables.
local  Used to create function variables.
locale  Shows information about current or all locales.
locate  Used to find files by their name.
lockfile  Create semaphore file(s) which can be used to limit access to a file.
logger  Make entries in the system log.
login  Create a new session on the system.
logname  Shows the login name of the current user.
logout  Performs the logout operation by making changes to the utmp and wtmp files.
logrotate  Used for automatic rotation, compression, removal, and mailing of system log files.
look  Shows any lines in a file containing a given string in the beginning.
losetup  Set up and control loop devices.
lpadmin  Used to configure printer and class queues provided by CUPS (Common UNIX Printing System).
lpc  Line printer control program, it provides limited control over CUPS printer and class queues.
lpinfo  Shows the list of avaiable devices and drivers known to the CUPS server.
lpmove  Move on or more printing jobs to a new destination.
lpq  Shows current print queue status for a specified printer.
lpr  Used to submit files for printing.
lprint  Used to print a file.
lprintd  Used to abort a print job.
lprintq  List the print queue.
lprm  Cancel print jobs.
lpstat  Displays status information about current classes, jobs, and printers.
ls  Shows the list of files in the current directory.
lsattr  Shows file attributes on a Linux ext2 file system.
lsblk  Lists information about all available or the specified block devices.
lsmod  Show the status of modules in the Linux kernel.
lsof  List open files.
lspci  List all PCI devices.
lsusb  List USB devices.

Linux Commands – M

Command Description
m4  Macro processor.
mail  Utility to compose, receive, send, forward, and reply to emails.
mailq  Shows to list all emails queued for delivery (sendmail queue).
mailstats  Shows current mail statistics.
mailto  Used to send mail with multimedia content in MIME format.
make  Utility to maintain groups of programs, recompile them if needed.
makedbm  Creates an NIS (Network Information Services) database map.
makemap  Creates database maps used by the keyed map lookups in sendmail.
man  Shows manual pages for Linux commands.
manpath  Determine search path for manual pages.
mattrib  Used to change MS-DOS file attribute flags.
mbadblocks  Checks MD-DOS filesystems for bad blocks.
mcat  Dump raw disk image.
mcd  Used to change MS-DOS directory.
mcopy  Used to copy MS-DOS files from or to Unix.
md5sum  Used to check MD5 checksum for a file.
mdel, mdeltree  Used to delete MS-DOS file. mdeltree recursively deletes MS-DOS directory and its contents.
mdir  Used to display an MS-DOS directory.
mdu  Used to display the amount of space occupied by an MS-DOS directory.
merge  Three-way file merge. Includes all changes from file2 and file3 to file1.
mesg  Allow/disallow osends to sedn write messages to your terminal.
metamail For sending and showing rich text or multimedia email using MIME typing metadata.
metasend   An interface for sending non-text mail.
mformat  Used to add an MS-DOS filesystem to a low-level formatted floppy disk.
mimencode  Translate to/from MIME multimedia mail encoding formats.
minfo  Display parameters of an MS-DOS filesystem.
mkdir  Used to create directories.
mkdosfs  Used to create an MS-DOS filesystem under Linux.
mke2fs  Used create an ext2/ext3/ext4 filesystem.
mkfifo  Used to create named pipes (FIFOs) with the given names.
mkfs  Used to build a Linux filesystem on a hard disk partition.
mkfs.ext3  Same as mke2fs, create an ext3 Linux filesystem.
mkisofs  Used to create an ISO9660/JOLIET/HFS hybrid filesystem.
mklost+found  Create a lost+found directory on a mounted ext2 filesystem.
mkmanifest  Makes a list of file names and their DOS 8.3 equivalent.
mknod  Create a FIFO, block (buffered) special file, character (unbuffered) special file with the specified name.
mkraid  Used to setup RAID device arrays.
mkswap  Set up a Linux swap area.
mktemp  Create a temporary file or directory.
mlabel  Make an MD-DOS volume label.
mmd  Make an MS-DOS subdirectory.
mmount  Mount an MS-DOS disk.
mmove  Move or rename an MS-DOS file or subdirectory.
mmv  Mass move and rename files.
modinfo  Show information about a Linux kernel module.
modprobe  Add or remove modules from the Linux kernel.
more  Display content of a file page-by-page.
most  Browse or page through a text file.
mount  Mount a filesystem.
mountd  NFS mount daemon.
mpartition  Partition an MS-DOS disk.
mpg123  Command-line mp3 player.
mpg321  Similar to mpg123.
mrd  Remove an MS-DOS subdirectory.
mren  Rename an existing MS-DOS file.
mshowfat  Show FTA clusters allocated to a file.
mt  Control magnetic tape drive operation.
mtools  Utilities to access MS-DOS disks.
mtoolstest  Tests and displays the mtools configuration files.
mtr  A network diagnostic tool.
mtype  Display contents of an MS-DOS file.
mv  Move/rename files or directories.
mzip  Change protection mode and eject disk on Zip/Jaz drive.

Linux Commands – N

Command Description
named  Internet domain name server.
namei  Follow a pathname until a terminal point is found.
nameif  Name network interfaces based on MAC addresses.
nc  Netcat utility. Arbitrary TCP and UDP connections and listens.
netstat  Show network information.
newaliases  Rebuilds mail alias database.
newgrp  Log-in to a new group.
newusers  Update/create new users in batch.
nfsd  Special filesystem for controlling Linux NFS server.
nfsstat  List NFS statistics.
nice  Run a program with modified scheduling priority.
nl  Show numbered line while displaying the contents of a file.
nm  List symbols from object files.
nohup  Run a command immune to hangups.
notify-send  A program to send desktop notifications.
nslookup  Used performs DNS queries. Read this article for more info.
nsupdate  Dynamic DNS update utility.

Linux Commands – O

Command Description
objcopy  Copy and translate object files.
objdump  Display information from object files.
od  Dump files in octal and other formats.
op  Operator access, allows system administrators to grant users access to certain root operations that require superuser privileges.
open  Open a file using its default application.
openvt  Start a program on a new virtual terminal (VT).

Linux Commands – P

Command Description
passwd  Change user password.
paste  Merge lines of files. Write to standard output, TAB-separated lines consisting of sqentially correspnding lines from each file.
patch  Apply a patchfile (containing differences listing by diff program) to an original file.
pathchk  Check if file names are valid or portable.
perl  Perl 5 language interpreter.
pgrep  List process IDs matching the specified criteria among all the running processes.
pidof  Find process ID of a running program.
ping  Send ICMP ECHO_REQUEST to network hosts.
pinky  Lightweight finger.
pkill  Send kill signal to processes based on name and other attributes.
pmap  Report memory map of a process.
popd  Removes directory on the head of the directory stack and takes you to the new directory on the head.
portmap  Converts RPC program numbers to IP port numbers.
poweroff  Shuts down the machine.
pppd  Point-to-point protocol daemon.
pr  Convert (column or paginate) text files for printing.
praliases  Prints the current system mail aliases.
printcap  Printer capability database.
printenv  Show values of all or specified environment variables.
printf  Show arguments formatted according to a specified format.
ps  Report a snapshot of the current processes.
ptx  Produce a permuted index of file contents.
pushd  Appends a given directory name to the head of the stack and then cd to the given directory.
pv  Monitor progress of data through a pipe.
pwck  Verify integrity of password files.
pwconv  Creates shadow from passwd and an optionally existing shadow.
pwd  Show current directory.

Linux Commands – Q

Command Description
quota  Shows disk usage, and space limits for a user or group. Without arguments, only shows user quotas.
quotacheck  Used to scan a file system for disk usage.
quotactl  Make changes to disk quotas.
quotaoff  Enable enforcement of filesystem quotas.
quotaon  Disable enforcement of filesystem quotas.
quotastats  Shows the report of quota system statistics gathered from the kernel.

Linux Commands – R

Command Description
raidstart  Start/stop RAID devices.
ram  RAM disk device used to access the RAM disk in raw mode.
ramsize  Show usage information for the RAM disk.
ranlib  Generate index to the contents of an archive and store it in the archive.
rar  Create and manage RAR file in Linux.
rarpd  Respond to Reverse Address Resoultion Protocol (RARP) requests.
rcp  Remote copy command to copy files between remote computers.
rdate  Set system date and time by fetching information from a remote machine.
rdev  Set or query RAM disk size, image root device, or video mode.
rdist  Remote file distribution client, maintains identical file copies over multiple hosts.
rdistd  Start the rdist server.
read  Read from a file descriptor.
readarray  Read lines from a file into an array variable.
readcd  Read/write compact disks.
readelf  Shows information about ELF (Executable and Linkable fomrat) files.
readlink  Display value of a symbolic link or canonical file name.
readonly  Mark functions and variables as read-only.
reboot  Restart the machine.
reject  Accept/reject print jobs sent to a specified destination.
remsync  Synchronize remote files over email.
rename  Rename one or more files.
renice  Change priority of active processes.
repquota  Report disk usage and quotas for a specified filesystem.
reset  Reinitialize the terminal.
resize2fs  Used to resize ext2/ext3/ext4 file systems.
restore  Restore files from a backup created using dump.
return  Exit a shell function.
rev  Show contents of a file, reversing the order of characters in every line.
rexec  Remote execution client for exec server.
rexecd  Remote execution server.
richtext  View “richtext” on an ACSII terminal.
rlogin  Used to connect a local host system with a remote host.
rlogind  Acts as the server for rlogin. It facilitates remote login, and authentication based on privileged port numbers from trusted hosts.
rm  Removes specified files and directories (not by default).
rmail  Handle remote mail received via uucp.
rmdir  Used to remove empty directories.
rmmod  A program to remove modules from Linux kernel.
rndc  Name server control utility. Send command to a BIND DNS server over a TCP connection.
rootflags  Show/set flags for the kernel image.
route  Show/change IP routing table.
routed  A daemon, invoked at boot time, to manage internet routing tables.
rpcgen  An RPC protocol compiler. Parse a file written in the RPC language.
rpcinfo  Shows RPC information. Makes an RPC call to an RPC server and reports the findings.
rpm  A package manager for linux distributions. Originally developed for RedHat Linux.
rsh  Remote shell. Connects to a specified host and executes commands.
rshd  A daemon that acts as a server for rsh and rcp commands.
rsync  A versitile to for copying files remotely and locally.
runlevel  Shows previous and current SysV runlevel.
rup  Remote status display. Shows current system status for all or specified hosts on the local network.
ruptime  Shows uptime and login details of the machines on the local network.
rusers  Shows the list of the users logged-in to the host or on all machines on the local network.
rusersd  The rsuerd daemon acts as a server that responds to the queries from rsuers command.
rwall  Sends messages to all users on the local network.
rwho  Reports who is logged-in to the hosts on the local network.
rwhod  Acts as a server for rwho and ruptime commands.

Linux Commands – S

Command Description
sane-find-scanner  Find SCSI and USB scanner and determine their device files.
scanadf  Retrieve multiple images from a scanner equipped with an automatic document feeder (ADF).
scanimage  Read images from image aquistion devices (scanner or camera) and display on standard output in PNM (Portable aNyMap) format.
scp  Copy files between hosts on a network securely using SSH.
screen  A window manager that enables multiple pseudo-terminals with the help of ANSI/VT100 terminal emulation.
script  Used to make a typescript of everything displayed on the screen during a terminal session.
sdiff  Shows two files side-by-side and highlights the differences.
sed  Stream editor for filtering and transforming text (from a file or a pipe input).
select  Synchronous I/O multiplexing.
sendmail  It’s a mail router or an MTA (Mail Transfer Agent). sendmail support can send a mail to one or more recepients using necessary protocols.
sensors  Shows the current readings of all sensor chips.
seq  Displays an incremental sequence of numbers from first to last.
set  Used to manipulate shell variables and functions.
setfdprm  Sets floppy disk parameters as provided by the user.
setkeycodes  Load kernel scancode-to-keycode mapping table entries.
setleds  Show/change LED light settings of the keyboard.
setmetamode  Define keyboard meta key handling. Without arguments, shows current meta key mode.
setquota  Set disk quotas for users and groups.
setsid  Run a program in a new session.
setterm  Set terminal attributes.
sftp  Secure File Transfer program.
sh  Command interpreter (shell) utility.
sha1sum  Compute and check 160-bit SHA1 checksum to verify file integrity.
shift  Shift positional parameters.
shopt  Shell options.
showkey  Examines codes sent by the keyboard displays them in printable form.
showmount  Shows information about NFS server mount on the host.
shred  Overwrite a file to hide its content (optionally delete it), making it harder to recover it.
shutdown  Power-off the machine.
size  Lists section size and the total size of a specified file.
skill  Send a signal to processes.
slabtop  Show kernel slab cache information in real-time.
slattach  Attack a network interface to a serial line.
sleep  Suspend execution for a specified amount of time (in seconds).
slocate  Display matches by searching filename databases. Takes ownership and file permission into consideration.
snice  Reset priority for processes.
sort  Sort lines of text files.
source  Run commands from a specified file.
split  Split a file into pieces of fixed size.
ss  Display socket statistics, similar to netstat.
ssh  An SSH client for logging in to a remote machine. It provides encrypted communication between the hosts.
ssh-add  Adds private key identities to the authentication agent.
ssh-agent  It holds private keys used for public key authentication.
ssh-keygen  It generates, manages, converts authentication keys for ssh.
ssh-keyscan  Gather ssh public keys.
sshd  Server for the ssh program.
stat  Display file or filesystem status.
statd  A daemon that listens for reboot notifications from other hosts, and manages the list of hosts to be notified when the local system reboots.
strace  Trace system calls and signals.
strfile  Create a random access file for storing strings.
strings  Search a specified file and prints any printable strings with at least four characters and followed by an unprintable character.
strip  Discard symbols from object files.
stty  Change and print terminal line settings.
su  Change user ID or become superuser.
sudo  Execute a command as superuser.
sum  Checksum and count the block in a file.
suspend  Suspend the execution of the current shell.
swapoff  Disable devices for paging and swapping.
swapon  Enable devices for paging and swapping.
symlink  Create a symbolic link to a file.
sync  Synchronize cached writes to persistent storage.
sysctl  Configure kernel parameters at runtime.
sysklogd  Linux system logging utilities. Provides syslogd and klogd functionalities.
syslogd  Read and log system messages to the system console and log files.

Linux Commands – T

Command Description
tac  Concatenate and print files in reverse order. Opposite of cat command.
tail  Show the last 10 lines of each specified file(s).
tailf  Follow the growth of a log file. (Deprecated command)
talk  A two-way screen-oriented communication utility that allows two user to exchange messages simulateneously.
talkd  A remote user communication server for talk.
tar  GNU version of the tar archiving utility. Used to store and extract multiple files from a single archive.
taskset  Set/retrieve a process’s CPU affinity.
tcpd  Access control utility for internet services.
tcpdump  Dump traffic on network. Displays a description of the contents of packets on a network interface that match the boolean expression.
tcpslice  Extract pieces of tcpdump files or merge them.
tee  Read from standard input and write to standard output and files.
telinit  Change SysV runlevel.
telnet  Telnet protocol user interface. Used to interact with another host using telnet.
telnetd  A server for the telnet protocol.
test  Check file type and compare values.
tftp  User interface to the internet TFTP (Trivial File Transfer Protocol).
tftpd  TFTP server.
time  Run programs and summarize system resource usage.
timeout  Execute a command with a time limit.
times  Shows accumulated user and system times for the shell and it’s child processes.
tload  Shows a graph of the current system load average to the specified tty.
tmpwatch  Recursively remove files and directories which haven’t been accessed for the specified period of time.
top  Displays real-time view of processes running on the system.
touch  Change file access and modification times.
tput  Modify terminal-dependent capabilities, color, etc.
tr  Translate, squeeze, or delete characters from standard input and display on standard output.
tracepath  Traces path to a network host discovering MTU (Maximum Transmission Unit) along this path.
traceroute  Traces the route taken by the packets to reach the network host.
trap  Trap function responds to hardware signals. It defines and creates handlers to run when the shell receives signals.
troff  The troff processor of the groff text formatting system.
TRUE  Exit with a status code indicating success.
tset  Initialize terminal.
tsort  Perform topological sort.
tty  Display the filename of the terminal connected to standard input.
tune2fs  Adjust tunable filesystem parameters on ext2/ext3/ext4 filesystems.
tunelp  Set various parameters for the line printer devices.
type  Write a description for a command type.

Linux Commands – U

Command Description
ul  Underline text.
ulimit  Get and set user limits for the calling process.
umask  Set file mode creation mask.
umount  Unmount specified file systems.
unalias  Remove alias definitions for specified alias names.
uname  Show system information.
uncompress Uncompress the files compressed with the compress command.
unexpand  Convert spaces to tabs for a specified file.
unicode_start  Put keyboard and console in Unicode mode.
unicode_stop  Revert keyboard and console from Unicode mode.
uniq  Report or omit repeating lines.
units  Convert units from one scalar to another.
unrar  Extract files from a RAR archive.
unset  Remove variable or function names.
unshar  Unpack shell archive scripts.
until  Execute command until a given condition is true.
uptime  Tell how long the system has been running.
useradd  Create a new user or update default user information.
userdel  Delete a user account and related files.
usermod  Modify a user account.
users  Show the list of active users on the machine.
usleep  Suspend execution for microsecond intervals.
uudecode  Decode a binary file.
uuencode  Encode a binary file.
uuidgen  Created a new UUID (Universally Unique Identifier) table.

Linux Commands – V

Command Description
vdir  Same as ls -l -b. Verbosely list directory contents.
vi  A text editor utility.
vidmode  Set the video mode for a kernel image. Displays current mode value without arguments. Alternative: rdev -v
vim  Vi Improved, a text-based editor which is a successor to vi.
vmstat Shows information about processes, memory, paging, block IO, traps, disks, and CPU activity.
volname  Returns volume name for a device formatted with an ISO-9660 filesystem. For example, CD-ROM.

Linux Commands – W

Command Description
w  Show who is logged-on and what they’re doing.
wait  Waits for a specified process ID(s) to terminate and returns the termination status.
wall  Display a message on the terminals all the users who are currently logged-in.
warnquota  Send mail to the users who’ve exceeded their disk quota soft limit.
watch  Runs commands repeatedly until interrupted and shows their output and errors.
wc  Print newline, word, and byte count for each of the specified files.
wget  A non-interactive file download utility.
whatis  Display one line manual page descriptions.
whereis  Locate the binary, source, and man page files for a command.
which  For a given command, lists the pathnames for the files which would be executed when the command runs.
while  Conditionally execute commands (while loop).
who  Shows who is logged on.
whoami  Displays the username tied to the current effective user ID.
whois  Looks for an object in a WHOIS database
write  Display a message on other user’s terminal.

Linux Commands – X

Command Description
xargs  Runs a command using initial arguments and then reads remaining arguments from standard input.
xdg-open  Used to open a file or URL in an application preferred by the user.
xinetd  Extended internet services daemon. Works similar to inetd.
xz  Compress/ Decompress .xz and .lzma files.

Linux Commands – Y

Command Description
yacc  Yet Another Compiler Compiler, a GNU Project parser generator.
yes  Repeatedly output a line with a specified string(s) until killed.
ypbind  A daemon that helps client processes to connect to an NIS server.
ypcat  Shows the NIS map (or database) for the specified MapName parameter.
ypinit  Sets up NIS maps on an NIS server.
ypmatch  Shows values for specified keys from an NIS map.
yppasswd  Change NIS login password.
yppasswdd  Acts as a server for the yppasswd command. Receives and executes requests.
yppoll  Shows the ID number or version of NIS map currently used on the NIS server.
yppush  Forces slave NIS servers to copy updated NIS maps.
ypserv  A daemon activated at system startup. It looks for information in local NIS maps.
ypset  Point a client (running ypbind) to a specifc server (running ypserv).
yptest  Calls various functions to check the configuration of NIS services.
ypwhich  Shows the hostname for NIS server or master server for a given map.
ypxfr  Transfers NIS server map from server to a local host.

Linux Commands – Z

Command Description
zcat  Used to compress/uncompress files. Similar to gzip
zcmp  Compare compressed files.
zdiff  Compare compressed files line by line.
zdump  Displays time for the timezone mentioned.
zforce  Adds .gz extension to all gzipped files.
zgrep  Performs grep on compressed files.
zic  Creates time conversion information files using the specified input files.
zip  A file compression and packaging utility.
zless  Displays information of a compressed file (using less command) on the terminal one screen at a time.
zmore  Displays output of a compressed file (using more command) on the terminal one page at a time.
znew  Recompress .z files to .gz. files.

So, this was the compilation of different Linux commands. I hope this A-Z Linux commands might help you in some way. I’ve spent weeks curating these Linux commands from various sources and testing them. If you find some command missing or some discrepency, please give your valuable feedback and help me make the overall list better. I’ll be looking forward to it.

Also Read: The Ultimate A to Z List Of Windows CMD Commands You Need To Know