Sergey Nivens - Fotolia

83 useful Linux commands

Enterprise administrators and managers who use this guide of essential Linux commands, utilities and tools will find ways to manage files, get process status updates and more.

Linux administrators cannot live by the GUI alone. That's why we've compiled useful Linux commands into this convenient guide.

By learning how to use a few simple tools, command-line cowards can become scripting commandos and get the most out of Linux by executing kernel and shell commands.

  1. alias
    The alias command is a way to run a command or a series of Unix commands using a shorter name than those that are usually associated with such commands.
  2. apt-get
    The apt-get tool automatically updates a Debian machine and installs Debian packages/programs.
  3. AWK, Gawk
    AWK is a programming language tool used to manipulate text. The AWK utility resembles the shell programming language in many areas, but AWK's syntax is very much its own. Gawk is the GNU Project's version of the AWK programming language.
  4. bzip2
    A portable, fast, open source program that compresses and decompresses files at a high rate, but that does not archive them.
  5. cat
    A Unix/Linux command that can read, modify or concatenate text files. The cat command also displays file contents.
  6. cd
    The cd command changes the current directory in Linux and can conveniently toggle between directories. The Linux cd command is similar to the CD and CHDIR commands in MS-DOS.
  7. chmod
    The chmod command changes the permissions of one or more files. Only the file owner or a privileged user can change the access mode.
  8. chown
    The chown prompt changes file or group ownership. It gives admins the option to change ownership of all the objects within a directory tree, as well as the ability to view information on the objects processed.
  9. cmp
    The cmp utility compares two files of any type and writes the results to the standard output. By default, cmp is silent if the files are the same. If they differ, cmp reports the byte and line number where the first difference occurred.
  10. comm
    Admins use comm to compare lines common to file1 and file2. The output is in three columns, from left to right: lines unique to file1, lines unique to file2 and lines common in both files.
  11. cp
    The cp command copies files and directories. Copies can be made simultaneously to another directory even if the copy is under a different name.
  12. cpio
    The cpio command copies files into or out of a cpio or tar archive. A tar archive is a file that contains other files, plus information about them, such as their file name, owner, timestamps and access permissions. The archive can be another file on the disk, a magnetic tape or a pipe. This Linux command also has three operating modes: copy-out, copy-in and copy-pass. It is also­ a more efficient alternative to tar.
  13. CRON
    CRON is a Linux system process that executes a program at a preset time. To use a CRON script, admins must prepare a text file that describes the program and when they want CRON to execute it. Then, the crontab program loads the text file and executes the program at the specified time.
  14. cURL
    Admins use cURL to transfer a URL. It is useful for determining if an application can reach another service and how healthy the service is.
  15. declare
    The declare command states variables, gives them attributes or modifies the properties of variables.
  16. df
    This command displays the amount of disk space available on the file system containing each file name argument. With no file name, the df command shows the available space on all the currently mounted file systems.
  17. echo
    Use echo to repeat a string variable to standard output.
  18. enable
    The enable command stops or starts printers and classes.
  19. env
    The env command runs a program in a modified environment or displays the current environment and its variables.
  20. eval
    The eval command analyzes several arguments, concatenates them into a single command and reports on that argument's status.
  21. exec
    This function replaces the parent process with any subsequently typed command. The exec command treats its arguments as the specification of one or more subprocesses to execute.
  22. exit
    The exit command terminates a script and returns a value to the parent script.
  23. expect
    The expect command talks to other interactive programs via a script and waits for a response, often from any string that matches a given pattern.
  24. export
    The export command converts a file into a different format than its current format. Once a file is exported, it can be accessed by any application that uses the new format.
  25. find
    The find command searches the directory tree to locate particular groups of files that meet specified conditions, including -name, -type, -exec, -size, -mtime and -user.
  26. forwhile
    The for and while commands execute or loop items repeatedly as long as certain conditions are met.
  27. free
    With the free command, admins can see the total amount of free and used physical memory and swap space in the system, as well as the buffers and cache used by the kernel.
  28. gawk
    See AWK entry.
  29. grep
    The grep command searches files for a given character string or pattern and can replace the string with another. This is one method of searching for files within Linux.
  30. gzip
    This is the GNU Project's open source program for file compression that compresses webpages on the server end for decompression in the browser. This is popular for streaming media compression and can simultaneously concatenate and compress several streams.
  31. history
    The history function shows all the commands used since the start of the current session.
  32. ifconfig
    The ifconfig command configures kernel-resident network interfaces at boot time. It is usually only needed when debugging or during system tuning.
  33. ifup
    With ifup, admins can configure a network interface and enable a network connection.
  34. ifdown
    The ifdown command shuts down a network interface and disables a network connection.
  35. iptables
    The iptables command allows or blocks traffic on a Linux host and can prevent certain applications from receiving or transmitting a request.
  36. kill
    With kill signals, admins can send a specific signal to a process. It is most often used to safely shut down processes or applications.
  37. less
    The less command lets an admin scroll through configuration and error log files, displaying text files one screen at a time with backward or forward navigation available.
  38. locate
    The locate command reads one or more databases and writes file names to match certain output patterns.
  39. lft
    The lft command determines connection routes and provides information to debug connections or find a box/system location. It also displays route packets and file types.
  40. ln
    The ln command creates a new name for a file using hard linking, which allows multiple users to share one file.
  41. ls
    The ls command lists files and directories within the current working directory, which allows admins to see when configuration files were last edited.
  42. lsof
    Admins use lsof to list all the open files. They can add -u to find the number of open files by username.
  43. lsmod
    The lsmod command displays a module's status within the kernel, which helps troubleshoot server function issues.
  44. man
    The man command allows admins to format and display the user manual that's built into Linux distributions, which documents commands and other system aspects.
  45. more
    Similar to less, more pages through text one screen at a time but has limitations on file navigation.
  46. mount
    This command mounts file systems on servers. It also lists the current file systems and their mount locations, which is useful to locate a defunct drive or install a new one.
  47. mkdir
    Linux mkdir generates a new directory with a name path.
  48. neat
    This is a Gnome GUI tool that allows admins to specify the information needed to set up a network card.
  49. netconfig/netcfg
    Admins can use netconfig to configure a network, enable network products and display a series of screens that ask for configuration information.
  50. netstat
    This command provides information and statistics about protocols in use and current TCP/IP network connections. It is a helpful forensic tool for figuring out which processes and programs are active on a computer and are involved in network communications.
  51. nslookup
    A user can enter a host name and find the corresponding IP address with nslookup. It can also help find the host name.
  52. od
    The od command dumps binary files in octal -- or hex/binary -- format to standard output.
  1. passwd
    Admins use passwd to update a user's current password.
  2. ping
    The ping command verifies that a particular IP address exists and can accept requests. It can test connectivity and determine response time, as well as ensure an operating user's host computer is working.
  3. ps
    Admins use ps to report the statuses of current processes in a system.
  4. pwd
    The print working directory (pwd) command displays the name of the current working directory.
  5. rcp
    Short for remote copy program, this prompt lets users copy files to or from a remote computer or between remote systems.
  1. read
    The read command interprets lines of text from standard input and assigns values of each field in the input line to shell variables for further processing.
  2. rsync
    This command syncs data from one disk or file to another across a network connection. It is similar to rcp but has more options.
  3. screen
    The GNU screen utility is a terminal multiplexor, where a user can use a single terminal window to run multiple terminal applications or windows.
  4. sdiff
    Admins use sdiff to compare two files and produce a side-by-side listing indicating lines that are dissimilar. The command then merges the files and outputs the results to the outfile.
  5. sed
    The sed utility is a stream editor that filters text in a pipeline, distinguishing it from other editors. It takes text input, performs operations on it and outputs the modified text. This command is typically used to extract part of a file using pattern matching or to substitute multiple occurrences of a string within a file.
  6. service
    This command is the quickest way to start or stop a service, such as networking.
  7. shutdown
    The shutdown command turns off the computer and can be combined with variables such as -h for halt after shutdown or -r for reboot after shutdown.
  8. slocate
    Like locate, slocate -- or secure locate -- provides a way to index and quickly search for files, but it can also securely store file permissions and ownership to hide information from unauthorized users.
  9. Snort
    Snort is an open source network intrusion detection system and packet sniffer that monitors network traffic. It looks at each packet to detect dangerous payloads or suspicious anomalies. Snort is based on libpcap.
  10. sort
    This command sorts lines of text alphabetically or numerically according to the fields. Users can input multiple sort keys.
  11. sudo
    The sudo command lets a system admin give certain users the ability to run some -- or all -- commands at the root level and logs all the commands and arguments.
  12. SSH
    Secure Socket Shell (SSH) is a command interface for secure remote computer access and is used by network admins to remotely control servers.
  1. tar
    The tar command lets users create archives from a number of specified files or to extract files from a specific archive.
  2. tail
    The tail command displays the last few lines of the file. This is particularly helpful for troubleshooting code because admins don't often need all the possible logs to determine code errors.
  1. TOP
    Technical Office Protocol (TOP) is a set of protocols for networks that performs distributed information processing and displays the tasks on the system that take up the most memory. TOP can sort tasks by CPU usage, memory usage and runtime.
  2. touch
    Admins can create a blank file within Linux with the touch command.
  3. tr
    This command translates or deletes characters from a text stream. It writes to a standard output, but it does not accept file names as arguments -- it only accepts input from standard input.
  4. traceroute
    The traceroute function determines and records a route through the internet between two computers and is useful for troubleshooting network/router issues. If the domain does not work or is not available, admins can use traceroute to track the IP.
  5. uname
    This function displays the current OS name and can print system information.
  6. uniq
    With uniq, admins can compare adjacent lines in a file and remove or identify any duplicate lines.
  7. vi
    The vi environment is a text editor that allows a user to control the system with just the keyboard instead of both mouse selections and keystrokes.
  8. vmstat
    The vmstat command snapshots everything in a system and reports information on such items as processes, memory, paging and CPU activity. This is a good method for admins to use to determine where issues/slowdowns may occur in a system.
  9. wget
    This is a network utility that retrieves web files that support HTTP, HTTPS and FTP protocols. The wget command works noninteractively in the background when a user is logged off. It can create local versions of remote websites and recreate original site directories.
  10. while
    See for entry.
  11. whoami
    The whoami command prints or writes the user login associated with the current user ID to the standard output.
  12. xargs
    Admins use xargs to read, build and execute arguments from standard input. Each input is separated by blanks.

Next Steps

Linux commands for new server admins

Six top Linux networking commands

Think you know your Linux commands? Take this quiz

Dig Deeper on Data center ops, monitoring and management

Cloud Computing
and ESG