The Only 115 Linux Commands and Utilities You’ll Ever Need

Linux Commands Header

While the GUI may have an appeal of its own, it simply doesn’t have the pace of a lightning fast command line on Linux. In the command line, you can rattle off several commands in a matter of seconds. Likewise, your capabilities are only limited by the number of linux commands you know rather than the display on your screen.

If you have a wide vocabulary then the sky’s the limit. If not, then you’re more restricted in what you can do. However, if you’re part of the latter group don’t fear, we’re here to assist you with the only Linux commands you’ll ever need. This guide has been designed specifically for network administrators to take you from passable command knowledge to outright fluency.

Overview from A-Z:

A: acpi,  alias, apropos, apt-get, arch, Aspell, autoupdate 8. AWK
B: bash, bg, bzip2
C: cat, cd, chmod, chown, cmp, comm, cp, cpio, CRON
D: date, declare, dirs, df
E: echo, enable, env, eval, exec, exit, expect, export
F: fc-list, find, for, free, fsck
G: grep, grpck, gunzip, gzip, groffer
H: hash, head, history, hostid, hwclock
I: ifconfig, ifup, ifdown
J: jobs, join
K: kbdrate, kill, killall
L: less, locate, lft, lftp, ln, Is
M: man, mc, mkdir, mmv, mtr
N: neat, netconfig/netcfg, netstat, notify-send, nslookup
O: objcopy, od, openvt
P: passwd, ping, poweroff, ps, pwd
Q: quota, quotacheck, quotactl
R: read, RPM, rsync
S: screen, sdiff, sed, shutdown, Snort, sort, sudo, SSH
T: tar, tcpdump, telnet, TOP, Tr, traceroute
U: uname, uniq
V: vi, vmstat
W: wc, Wget, whoami
X: xargs, xdg-open
Y: yppasswd, yppoll, yptest
Z: zcat, zcmp, zdiff, zip


No.Command NameDescription
1acpiShows information about the Advanced Configuration and Power Interface.
2aliasRuns a command (or series of commands) with a shorter name than the full command name).
3aproposDisplays a list of all topics from the man pages related to your query.
4apt-getUsed to update a Debian machine automatically and install a package or program.
5ArchDisplays print machine hardware name.
6AspellGNU Aspell is an open source spell checker utility.
7autoupdateUpdates a file to a new autoconf.
8AWKFind and replace text in a file.


9bashGNU Bourne-Again Shell.
10bgSends processes to the background.
11bzip2An open source program that is used to compress or decompress files rapidly.


12catUsed to read, modify, or concentrate text files.
13cdChanges the current directory.
14chmodChanges the permissions or access mode of a file(s). Only a privileged user or file owner can change the access mode.
15chownChanges the ownership of a file or group of files. Can change ownership for objects within an entire directory tree.
16cmpCompares two files. If the files are the same nothing happens but if they’re different then cmp reports to byte and line number.
17commCompares two files line by line.
18cpCopies files and directories.
19cpioCopies files in or out of a cpio or tar archive (a tar archive is a file with other files inside it). Tar archives also include information including; owner, file name, timestamps and access permissions.
20CRONDaemon used to execute programs at a specific time. You need to create a text file that dictates what file will be executed and the time to be executed. CRON then loads the text file.


21dateUsed to set the date and time of a system.
22declareUsed to declare variables and provide them with attributes.
23dirsShows a list of remembered directories.
24dfShows how much disk usage there is on your system.


25echoUsed with shell scripts to enable a user to repeat a string variable to a standard output.
26enableUsed to start or stop printers and classes.
27envDisplays current environment variables.
28evalUsed to evaluate several arguments at once and concatenates them into one command.
29execReplaces parent process with the entered command.
30exitExits the terminal/terminates a script.
31expectTalks to other programs and waits for a response.
32exportConverts one file into a different format.


33fc-listShows a list of available fonts.
34findSearches the directory tree for groups that meet certain conditions. These conditions include, name, user, type, size, exec, and mtime.
35for, whileUsed to execute or loop items indefinitely (so long as certain criteria is met).
36freeShows you how much free space there is in your memory. You can also view used memory too.
37fsckUsed to check and repair a file system.


38grepSearches files for a specific pattern or character string to replace with another. This command is generally used for searching for files.
39grpckUsed to verify the integrity of a group’s information.
40gunzipOpens a utility used to compress and expand files.
41gzipGNU open source program used for file compression.
42grofferDisplay groff files and man pages.


43hashShows the command path locations.
44headShows first 10 lines of specified files.
45historyShows the systems command history.
46hostidShows hosts ID in hexadecimal format.
47hwclockView/configure the hardware clock.


48ifconfigThis command is used to configure resident kernel network interfaces. Most of the time it is used when booting up but it can also be used for debugging as well.
49ifupUsed to configure a network interface and enable a network connection.
50ifdownUsed to shut down a network interface and disable a network connection.


51jobsShows a list of active jobs. Also shows job status.
52joinJoins lines of two files on a common field.


53kbdrateResets the keyboard repeat rate/delay time.
54killSends a kill signal to a one or more processes.
55killallSends a kill signal to all processes running the specified command.


56lessDisplays contents of a file one page at a time.
57locate, slocate
Locate is used to read a database(s) and outputs files that match certain patterns. Similarly slocate (secure locate) is used to index files, search for files, and store file permissions securely.
58lftIdentifies connection routes and provides additional information useful for debugging connections.
59lftpAn FTP utility.
60InCreates a new name for a file via a hard link. In practice this allows multiple users to share a single file.
61IsLists files and directories within the current working directory.


62manDisplays the user manual pages on Linux commands.
63mcA text-based file manager or visual shell for Unix systems.
64mkdirCreates directories.
65mmvMoves and renames files en masse.
66mtrNetwork diagnostic tool.


67neatA GNOME GUI admin tool which allows users to dictate what information is needed to set up a network card.
Configures a network and enables network products.
69netstatShows information about active protocols in TCP/IP network connections.
A program used to send desktop notifications.
71nslookupEnter a host name and find the accompanying IP address. You can also reverse this.


72objcopyCopies and translates object files.
73odDumps binary files in octal, hex, or binary to standard output.
74openvtStarts a program through a virtual terminal.


75passwdUpdates the user’s current password.
76pingEnables the user to check that an IP address exists. Can also determine response times.
77poweroffShuts the machine down.
78psReports status of all current processes within a system.
79pwdShows the name of the current working directory.


80quotaShows disk usage for a user or group.
81quotacheckScans a file system for disk usage.
82quotactlChange disk quotas.


83readTakes lines of text from a standard input and assigns values to each file.
84RPMRPM or Red Hat Package Manager is a command line program that allows you to install, manage, or uninstall software packages with Linux.
85rsyncSyncs data from one file (or disk) to another. Good choice for data backups.


86screenA window manager which allows the user to run multiple terminal applications or windows through one terminal window.
87sdiffLooks for differences between two files. Shows you lines that are dissimilar before merging them.
88sedThis is a stream editor that is used to filter text. Used to filter, extract and replace parts of files.
89shutdownShuts down the computer. If you combine with -h it will stop after shutdown or you can use -r to reboot automatically after shutdown.
90SnortA network intrusion detection system and packet sniffer based in libpcap. Used to monitor network traffic.
91sortSorts text alphabetically or numerically.
92sudoGives the user permissions to run some or all commands.
93SSHCommand interface used for gaining access to remote computer securely.


94tarYou can create archives from a number of specified files.
95tcpdumpNetwork packet analysis tool.
96telnetUser interface for the Telnet protocol.
97TOPAllows you to monitor system processes with distributed information processing. Sorts tasks by CPU usage, memory usage and runtime.
98trTranslates or deletes characters from a text stream. Only accepts standard input.
99tracerouteIdentifies and records a route over the internet between two computers. Good for troubleshooting and determining network issues.


100unameDisplays the name of the current operating information. Can also print information.
101uniqCompares lines adjacent lines within a file and removes duplicate lines.


102viVi is a well known text editor that allows users to control their system via the keyboard.
103vmstatGives the user a snapshot of everything with information on things like memory, processes, paging and CPU activity.


104wcCounts the number of words, lines, and characters in text files.
105WgetNetwork utility used to pull files from the web with support for http, https, and ftp. Works in the background while a user is logged off.
106whoamiProducts the user/login name linked to the current user ID.


107xargsUses standard input to read, build, and execute arguments.
Opens a file or UTL in the user’s preferred application.


109yppasswdChanges NIS login password.
110yppollShows the ID number/version of NIS map on the NIS server.
111yptestUses NIS functions to check if NIS configuration is correct.


112zcatCompresses/uncompress files (similar to gzip).
113zcmpCompares compressed files.
114zdiffCompares compressed files line by line.
115zipCompression and file packing utility.


When it comes to Linux commands, there is no telling how many commands there actually are. The commands available on a Linux system depend on the operating system you’re on. That being said the list is extensive and the commands we’ve covered in this article are just the tip of the iceberg. However few commands will be as integral to your day-to-day usage as the commands outlined above.

These commands will give you a lot of mileage so that you can supplement in niche commands as you learn them. Obviously, the catch is you’re going to need to learn them first! While much of this will rely on you simply using the commands over and over again you can also use this guide as a cheat-sheet. However, if you want to make things easier there is a command you can use to help you locate other commands. This is called the Apropos command. We’ve listed this above but we will repeat below for convenience:

apropos “list directory”

Depending on the command you searched for, this will bring up a list of relevant commands. The example above would display commands such as dir, ls, ntfsls, and vdir. Ultimately the more time you spend using these commands the better you’ll retain them and the more you’ll get out of your distribution.

Leave a Reply