A – Z Linux Commands – Overview with Examples

Index

There are a countless number of commands in Linux. We are bound to use a number of them on a daily routine or numerous times to perform common tasks than others. It is important to note that certain commands are “distro-based” – they can only be found in specific distros. While others are generic Unix/Linux commands that you’ll find in all if not most mainstream distros.

In this article, we will introduce you a list of most frequently used Linux commands with their examples for easy learning. You can find the actual description of each Linux command in their manual page which you can access like this:

$ man command-name

↥ Back To Top

adduser/addgroup

The adduser and addgroup commands are used to add a user and group to the system respectively according to the default configuration specified in /etc/adduser.conf file.

$ sudo adduser tecmint

For more adduser and addgroup commands: 15 Practical Examples on adduser Command in Linux

↥ Back To Top

agetty

agetty is a program which manages physical or virtual terminals and is invoked by init. Once it detects a connection, it opens a tty port, asks for a user’s login name and calls up the /bin/login command. Agetty is a substitute of Linux getty:

$ agetty -L 9600 ttyS1 vt100

↥ Back To Top

alias

alias is a useful shell built-in command for creating aliases (shortcut) to a Linux command on a system. It is helpful for creating new/custom commands from existing Shell/Linux commands (including options):

$ alias home=’cd /home/tecmint/public_html’

The above command will create an alias called home for /home/tecmint/public_html directory, so whenever you type home in the terminal prompt, it will put you in the /home/tecmint/public_html directory.

↥ Back To Top

anacron

anacron is a Linux facility used to run commands periodically with a frequency defined in days, weeks and months.

Unlike its sister cron; it assumes that a system will not run continuously, therefore if a scheduled job is due when the system is off, it’s run once the machine is powered on.

For more information about anacron and cron read: Cron Vs Anacron: How to Schedule Jobs Using Anacron on Linux

↥ Back To Top

apropos

apropos command is used to search and display a short man page description of a command/program as follows.

$ apropos adduser

↥ Back To Top

apt

apt tool is a relatively new higher-level package manager for Debian/Ubuntu systems:

$ sudo apt update

For more apt usage read: 15 Useful Examples on APT Command

↥ Back To Top

apt-get

apt-get is a powerful and free front-end package manager for Debian/Ubuntu systems. It is used to install new software packages, remove available software packages, upgrade existing software packages as well as upgrade entire operating system.

$ sudo apt-get update

For more apt-get usage, read: 25 Useful Commands of APT-GET for Package Management

↥ Back To Top

aptitude

aptitude is a powerful text-based interface to the Debian GNU/Linux package management system. Like apt-get and apt; it can be used to install, remove or upgrade software packages on a system.

$ sudo aptitude update

For more usage on aptitude, read: Learn Debian Package Management with Aptitude Command

↥ Back To Top

arch

arch is a simple command for displaying machine architecture or hardware name (similar to uname -m):

$ arch

↥ Back To Top

arp

ARP (Address Resolution Protocol) is a protocol that maps IP network addresses of a network neighbor with the hardware (MAC) addresses in an IPv4 network.

You can use it as below to find all alive hosts on a network:

$ sudo arp-scan –interface=enp2s0 –localnet

↥ Back To Top

at

at command is used to schedule tasks to run in a future time. It’s an alternative to cron and anacron, however, it runs a task once at a given future time without editing any config files:

For example, to shutdown the system at 23:55 today, run:

$ sudo echo “shutdown -h now” at -m 23:55
↥ Back To Top

atq

atq command is used to view jobs in at command queue:

$ atq

↥ Back To Top

atrm

atrm command is used to remove/deletes jobs (identified by their job number) from at command queue:

$ atrm 2

For more usage about at command, read: How to Use ‘at’ Command to Schedule a Task in Linux

↥ Back To Top

awk

Awk is a powerful programming language created for text processing and generally used as a data extraction and reporting tool.

$ awk ‘//{print}’/etc/hosts

For more Awk concepts (basic and advance) with simple and easy-to-understand, we’ve created a book that contains 13 chapters with a total of 41 pages, which covers all Awk basic and advance usage with practical examples: Awk Getting Started Guide for Beginners

↥ Back To Top

batch

batch is also used to schedule tasks to run a future time, similar to the at command.

↥ Back To Top

basename

basename command helps to print the name of a file stripping of directories in the absolute path:

$ basename bin/findhosts.sh

↥ Back To Top

bc

bc is a simple yet powerful and arbitrary precision CLI calculator language which can be used like this:

$ echo 20.05 + 15.00 bc
↥ Back To Top

bg

bg is a command used to send a process to the background.

$ tar -czf home.tar.gz . $ bg $ jobs

To learn more about bg command, read: Start Linux Command in Background and Detach Process in Terminal

↥ Back To Top

bzip2

bzip2 command is used to compress or decompress file(s).

$ bzip2 -z filename #Compress $ bzip2 -d filename.bz2 #Decompress

To learn more examples on bzip2, read: How to Compress and Decompress a .bz2 File in Linux

↥ Back To Top

cal

The cal command print a calendar on the standard output.

$ cal

↥ Back To Top

cat

cat command is used to view contents of a file or concatenate files, or data provided on standard input, and display it on the standard output.

$ cat file.txt

To learn more about cat command, read: 13 Useful Cat Command Examples on Linux

↥ Back To Top

chgrp

chgrp command is used to change the group ownership of a file. Provide the new group name as its first argument and the name of file as the second argument like this:

$ chgrp tecmint users.txt

↥ Back To Top

chmod

chmod command is used to change/update file access permissions like this.

$ chmod +x sysinfo.sh

↥ Back To Top

chown

chown command changes/updates the user and group ownership of a file/directory like this.

$ chmod -R www-data:www-data /var/www/html

To learn more about chgrp, chmod and chwon commands, read: Managing Users & Groups, File Permissions & Attributes in Linux

↥ Back To Top

cksum

cksum command is used to display the CRC checksum and byte count of an input file.

$ cksum README.txt

↥ Back To Top

clear

clear command lets you clear the terminal screen, simply type.

$ clear

↥ Back To Top

cmp

cmp performs a byte-by-byte comparison of two files like this.

$ cmp file1 file2

↥ Back To Top

comm

comm command is used to compare two sorted files line-by-line as shown below.

$ comm file1 file2

↥ Back To Top

cp

cp command is used for copying files and directories from one location to another.

$ cp /home/tecmint/file1 /home/tecmint/Personal/

For more information on how to copy files in Linux, read:

  1. How to Copy a File to Multiple Directories in Linux
  2. Advanced Copy Command – Shows Progress Bar While Copying Large Files/Folders in Linux
  3. Progress – A Tiny Tool to Monitor Progress for (cp, mv, dd, tar, etc.) Commands in Linux
↥ Back To Top

date

date command displays/sets the system date and time like this.

$ date $ date –set=”8 JUN 2017 13:00:00”

To learn more about how to set date in Linux, read: How to Set System Date in Linux

↥ Back To Top

dd

dd command is used for copying files, converting and formatting according to flags provided on the command line. It can strip headers, extracting parts of binary files and so on.

The example below shows creating a boot-able USB device:

$ dd if=/home/tecmint/kali-linux-1.0.4-i386.iso of=/dev/sdc1 bs=512M; sync

↥ Back To Top

df

df command is used to show file system disk space usage as follows.

$ df -h

For more usage on df command, read: 12 Useful ‘df’ Command Examples to Check Disk Space

↥ Back To Top

diff

diff command is used to compare two files line by line. It can also be used to find the difference between two directories in Linux like this:

$ diff file1 file2

Some useful diff tools for Linux: 8 Best File Comparison and Difference (Diff) Tools for Linux

↥ Back To Top

dir

dir command works like Linux ls command, it lists the contents of a directory.

$ dir

↥ Back To Top

dmidecode

dmidecode command is a tool for retrieving hardware information of any Linux system. It dumps a computer’s DMI (a.k.a SMBIOS) table contents in a human-readable format for easy retrieval.

To view your system hardware info, you can type:

$ sudo dmidecode –type system

Some useful tools to find out Linux system hardware info: 10 Useful Commands to Get Linux Hardware Information

↥ Back To Top

du

du command is used to show disk space usage of files present in a directory as well as its sub-directories as follows.

$ du /home/aaronkilik

↥ Back To Top

echo

echo command prints a text of line provided to it.

$ echo “This is TecMint - Linux How Tos”

↥ Back To Top

eject

eject command is used to eject removable media such as DVD/CD ROM or floppy disk from the system.

$ eject /dev/cdrom $ eject /mnt/cdrom/ $ eject /dev/sda

↥ Back To Top

env

env command lists all the current environment variables and used to set them as well.

$ env

Learn more on How to Set and Unset Environment Variables in Linux

↥ Back To Top

exit

exit command is used to exit a shell like so.

$ exit

↥ Back To Top

expr

expr command is used to calculate an expression as shown below.

$ expr 20 + 30

↥ Back To Top

factor

factor command is used to show the prime factors of a number.

$ factor 10

↥ Back To Top

find

find command lets you search for files in a directory as well as its sub-directories. It searches for files by attributes such as permissions, users, groups, file type, date, size and other possible criteria.

$ find /home/tecmint/ -name tecmint.txt

Learn more on how to find files in Linux:

  1. How to Use ‘find’ Command to Search for Multiple Filenames (Extensions)
  2. How to Find Number of Files in a Directory and Subdirectories
  3. How to Find Today’s Modified Files in Linux
  4. How to Find and Sort Files Based on Modified Date and Time
  5. How to Find Top Directories and Files (Disk Space) in Linux
↥ Back To Top

free

free command shows the system memory usage (free, used, swapped, cached, etc.) in the system including swap space. Use the -h option to display output in human friendly format.

$ free -h

Learn more on how to find memory usage in Linux.

  1. Find Top Running Processes by Highest Memory and CPU Usage in Linux
  2. Smem – Reports Memory Consumption Per-Process and Per-User Basis in Linux
  3. How to Clear RAM Memory Cache, Buffer and Swap Space on Linux
↥ Back To Top

grep

grep command searches for a specified pattern in a file (or files) and displays in output lines containing that pattern as follows.

$ grep ‘tecmint’ domain-list.txt

Learn more about grep command usage in Linux.

  1. What’s Difference Between Grep, Egrep and Fgrep in Linux?
  2. 12 Basic Linux ‘Grep’ Command Examples in Linux
  3. 11 Advanced Linux ‘Grep’ Commands in Linux
↥ Back To Top

groups

groups command displays all the names of groups a user is a part of like this.

$ groups $ groups tecmint

↥ Back To Top

gzip

Gzip helps to compress a file, replaces it with one having a .gz extension as shown below:

$ gzip passwds.txt $ cat file1 file2 | gzip > foo.gz

↥ Back To Top

gunzip

gunzip expands or restores files compressed with gzip command like this.

$ gunzip foo.gz

↥ Back To Top

head command is used to show first lines (10 lines by default) of the specified file or stdin to the screen:

# ps -eo pid,ppid,cmd,%mem,%cpu –sort=-%mem head
↥ Back To Top

history

history command is used to show previously used commands or to get info about command executed by a user.

$ history

Learn more about Linux history command.

  1. The Power of Linux “History Command” in Bash Shell
  2. Set Date and Time for Each Command You Execute in Bash History
  3. How to Use ‘Yum History’ to Find Out Installed/Removed Packages Info
↥ Back To Top

hostname

hostname command is used to print or set system hostname in Linux.

$ hostname $ hostname NEW_HOSTNAME

↥ Back To Top

hostnamectl

hostnamectl command controls the system hostname under systemd. It is used to print or modify the system hostname and any related settings:

$ hostnamectl $ sudo hostnamectl set-hostname NEW_HOSTNAME

↥ Back To Top

hwclock

hwclock is a tool for managing the system hardware clock; read or set the hardware clock (RTC).

$ sudo hwclock $ sudo hwclock –set –date 8/06/2017

↥ Back To Top

hwinfo

hwinfo is used to probe for the hardware present in a Linux system like this.

$ hwinfo

Learn more about how to get Linux hardware info.

  1. I-Nex – An Advanced Tool to Collect System/Hardware Information in Linux
  2. 9 Useful Tools to Get System Information in Linux
↥ Back To Top

id

id command shows user and group information for the current user or specified username as shown below.

$ id tecmint

↥ Back To Top

ifconfig

ifconfig command is used to configure a Linux systems network interfaces. It is used to configure, view and control network interfaces.

$ ifconfig $ sudo ifconfig eth0 up $ sudo ifconfig eth0 down $ sudo ifconfig eth0 172.16.25.125

↥ Back To Top

ionice

ionice command is used to set or view process I/O scheduling class and priority of the specified process.

If invoked without any options, it will query the current I/O scheduling class and priority for that process:

$ ionice -c 3 rm /var/logs/syslog

To understand how it works, read this article: How to Delete HUGE (100-200GB) Files in Linux

↥ Back To Top

iostat

iostat is used to show CPU and input/output statistics for devices and partitions. It produces useful reports for updating system configurations to help balance the input/output load between physical disks.

$ iostat

↥ Back To Top

ip

ip command is used to display or manage routing, devices, policy routing and tunnels. It also works as a replacement for well known ifconfig command.

This command will assign an IP address to a specific interface (eth1 in this case).

$ sudo ip addr add 192.168.56.10 dev eth1

↥ Back To Top

iptables

iptables is a terminal based firewall for managing incoming and outgoing traffic via a set of configurable table rules.

The command below is used to check existing rules on a system (using it may require root privileges).

$ sudo iptables -L -n -v

Learn more about iptables firewall in Linux.

  1. How to Start/Stop and Enable/Disable FirewallD and Iptables in Linux
  2. Basic Guide on IPTables (Linux Firewall) Tips / Commands
  3. Nishita Agarwal Shares Her Interview Experience on Linux ‘iptables’ Firewall
↥ Back To Top

iw

iw command is used to manage wireless devices and their configuration.

$ iw list

↥ Back To Top

iwlist

iwlist command displays detailed wireless information from a wireless interface. The command below enables you to get detailed information about the wlp1s0 interface.

$ iwlist wlp1s0 scanning

↥ Back To Top

kill

kill command is used to kill a process using its PID by sending a signal to it (default signal for kill is TERM).

$ kill -p 2300 $ kill -SIGTERM -p 2300

↥ Back To Top

killall

killall command is used to kill a process by its name.

$ killall firefox

Learn more about kill and killall command in Linux.

  1. How to Find and Kill Running Processes in Linux
  2. A Guide to Kill, Pkill and Killall Commands to Terminate a Process
  3. How to Kill Processes/Unresponsive Applications Using ‘xkill’ Command
↥ Back To Top

kmod

kmod command is used to manage Linux kernel modules. To list all currently loaded modules, type.

$ kmod list

↥ Back To Top

last

last command display a listing of last logged in users.

$ last

↥ Back To Top

ln

ln command is used to create a soft link between files using the -s flag like this.

$ ln -s /usr/bin/lscpu cpuinfo

↥ Back To Top

locate

locate command is used to find a file by name. The locate utility works better and faster than it’s find counterpart.

The command below will search for a file by its exact name (not *name*):

$ locate -b ‘\domain-list.txt’

↥ Back To Top

login

login command is used to create a new session with the system. You’ll be asked to provide a username and a password to login as below.

$ sudo login

↥ Back To Top

ls

ls command is used to list contents of a directory. It works more or less like dir command.

The -l option enables long listing format like this.

$ ls -l file1

To know more about ls command, read our guides.

  1. 15 Basic ‘ls’ Command Examples in Linux
  2. 7 Quirky ‘ls’ Command Tricks Every Linux User Should Know
  3. How to Sort Output of ‘ls’ Command By Last Modified Date and Time
  4. 15 Interview Questions on Linux “ls” Command – Part 1
  5. 10 Useful ‘ls’ Command Interview Questions – Part 2
↥ Back To Top

lshw

lshw command is a minimal tool to get detailed information on the hardware configuration of the machine, invoke it with superuser privileges to get a comprehensive information.

$ sudo lshw

↥ Back To Top

lscpu

lscpu command displays system’s CPU architecture information (such as number of CPUs, threads, cores, sockets, and more).

$ lscpu

↥ Back To Top

lsof

lsof command displays information related to files opened by processes. Files can be of any type, including regular files, directories, block special files, character special files, executing text reference, libraries, and stream/network files.

To view files opened by a specific user’s processes, type the command below.

$ lsof -u tecmint

↥ Back To Top

lsusb

lsusb command shows information about USB buses in the system and the devices connected to them like this.

$ lsusb

↥ Back To Top

man

man command is used to view the on-line reference manual pages for commands/programs like so.

$ man du $ man df

↥ Back To Top

md5sum

md5sum command is used to compute and print the MD5 message digest of a file. If run without arguments, debsums checks every file on your system against the stock md5sum files:

$ sudo debsums

↥ Back To Top

mkdir

mkdir command is used to create single or more directories, if they do not already exist (this can be overridden with the -p option).

$ mkdir tecmint-files OR $ mkdir -p tecmint-files

↥ Back To Top

more

more command enables you to view through relatively lengthy text files one screenful at a time.

$ more file.txt

Check difference between more and less command and Learn Why ‘less’ is Faster Than ‘more’ Command

↥ Back To Top

mv

mv command is used to rename files or directories. It also moves a file or directory to another location in the directory structure.

$ mv test.sh sysinfo.sh

↥ Back To Top

nano

nano is a popular small, free and friendly text editor for Linux; a clone of Pico, the default editor included in the non-free Pine package.

To open a file using nano, type:

$ nano file.txt

↥ Back To Top

nc/netcat

nc (or netcat) is used for performing any operation relating to TCP, UDP, or UNIX-domain sockets. It can handle both IPv4 and IPv6 for opening TCP connections, sending UDP packets, listening on arbitrary TCP and UDP ports, performing port scanning.

The command below will help us see if the port 22 is open on the host 192.168.56.5.

$ nc -zv 192.168.1.5 22

Learn more examples and usage on nc command.

  1. How to Check Remote Ports are Reachable Using ‘nc’ Command
  2. How to Transfer Files Between Computers Using ‘nc’ Command
↥ Back To Top

netstat

netstat command displays useful information concerning the Linux networking subsystem (network connections, routing tables, interface statistics, masquerade connections, and multicast memberships).

This command will display all open ports on the local system:

$ netstat -a more
↥ Back To Top

nice

nice command is used to show or change the nice value of a running program. It runs specified command with an adjusted niceness. When run without any command specified, it prints the current niceness.

The following command starts the process “tar command” setting the “nice” value to 12.

$ nice -12 tar -czf backup.tar.bz2 /home/*

↥ Back To Top

nmap

nmap is a popular and powerful open source tool for network scanning and security auditing. It was intended to quickly scan large networks, but it also works fine against single hosts.

The command below will probe open ports on all live hosts on the specified network.

$ nmap -sV 192.168.56.0/24

↥ Back To Top

nproc

nproc command shows the number of processing units present to the current process. It’s output may be less than the number of online processors on a system.

$ nproc

↥ Back To Top

openssl

The openssl is a command line tool for using the different cryptography operations of OpenSSL’s crypto library from the shell. The command below will create an archive of all files in the current directory and encrypt the contents of the archive file:

$ tar -czf - * openssl enc -e -aes256 -out backup.tar.gz
↥ Back To Top

passwd

passwd command is used to create/update passwords for user accounts, it can also change the account or associated password validity period. Note that normal system users may only change the password of their own account, while root may modify the password for any account.

$ passwd tecmint

↥ Back To Top

pidof

pidof displays the process ID of a running program/command.

$ pidof init $ pidof cinnamon

↥ Back To Top

ping

ping command is used to determine connectivity between hosts on a network (or the Internet):

$ ping google.com

↥ Back To Top

ps

ps shows useful information about active processes running on a system. The example below shows the top running processes by highest memory and CPU usage.

# ps -eo pid,ppid,cmd,%mem,%cpu –sort=-%mem head
↥ Back To Top

pstree

pstree displays running processes as a tree which is rooted at either PID or init if PID is omitted.

$ pstree

↥ Back To Top

pwd

pwd command displays the name of current/working directory as below.

$ pwd

↥ Back To Top

rdiff-backup

rdiff-backup is a powerful local/remote incremental backup script written in Python. It works on any POSIX operating system such as Linux, Mac OS X.

Note that for remote backups, you must install the same version of rdiff-backup on both the local and remote machines. Below is an example of a local backup command:

$ sudo rdiff-backup /etc /media/tecmint/Backup/server_etc.backup

↥ Back To Top

reboot

reboot command may be used to halt, power-off or reboot a system as follows.

$ reboot

↥ Back To Top

rename

rename command is used to rename many files at once. If you’ve a collection of files with “.html” extension and you want to rename all of them with “.php” extension, you can type the command below.

$ rename ‘s/\.html$/\.php/’ *.html

↥ Back To Top

rm command

rm command is used to remove files or directories as shown below.

$ rm file1 $ rm -rf my-files

↥ Back To Top

rmdir

rmdir command helps to delete/remove empty directories as follows.

$ rmdir /backup/all

↥ Back To Top

scp

scp command enables you to securely copy files between hosts on a network, for example.

$ scp ~/names.txt root@192.168.56.10:/root/names.txt

↥ Back To Top

shutdown

shutdown command schedules a time for the system to be powered down. It may be used to halt, power-off or reboot the machine like this.

$ shutdown –poweroff

Learn how to show a Custom Message to Users Before Linux Server Shutdown.

↥ Back To Top

sleep

sleep command is used to delay or pause (specifically execution of a command) for a specified amount of time.

$ check.sh; sleep 5; sudo apt update

↥ Back To Top

sort

sort command is used to sort lines of text in the specified file(s) or from stdin as shown below

$ cat words.txt

Learn more examples of sort command in Linux.

  1. 7 Interesting Linux ‘sort’ Command Examples
  2. How to Sort Output of ‘ls’ Command By Last Modified Date and Time
  3. How to Find and Sort Files Based on Modification Date and Time
↥ Back To Top

split

split as the name suggests, is used to split a large file into small parts.

$ tar -cvjf backup.tar.bz2 /home/tecmint/Documents/*

↥ Back To Top

ssh

ssh (SSH client) is an application for remotely accessing and running commands on a remote machine. It is designed to offer a secure encrypted communications between two untrusted hosts over an insecure network such as the Internet.

$ ssh tecmint@192.168.56.10

Learn more about ssh command and how to use it on Linux.

  1. 5 Best Practices to Secure and Protect SSH Server
  2. Configure “No Password SSH Keys Authentication” with PuTTY on Linux
  3. SSH Passwordless Login Using SSH Keygen in 5 Easy Steps
  4. Restrict SSH User Access to Certain Directory Using Chrooted Jail
↥ Back To Top

stat

stat is used to show a file or file system status like this (-f is used to specify a filesystem).

$ stat file1

↥ Back To Top

su

su command is used to switch to another user ID or become root during a login session. Note that when su is invoked without a username, it defaults to becoming root.

$ su $ su tecmint

↥ Back To Top

sudo

sudo command allows a permitted system user to run a command as root or another user, as defined by the security policy such as sudoers.

In this case, the real (not effective) user ID of the user running sudo is used to determine the user name with which to query the security policy.

$ sudo apt update $ sudo useradd tecmint $ sudo passwd tecmint

Learn more about sudo command and how to use it on Linux.

  1. 10 Useful Sudoers Configurations for Setting ‘sudo’ in Linux
  2. How to Run ‘sudo’ Command Without Entering a Password in Linux
  3. How to Keep ‘sudo’ Password Timeout Session Longer in Linux
↥ Back To Top

sum

sum command is used to show the checksum and block counts for each each specified file on the command line.

$ sum output file.txt

↥ Back To Top

tac

tac command concatenates and displays files in reverse. It simply prints each file to standard output, showing last line first.

$tac file.txt

↥ Back To Top

tail

tail command is used to display the last lines (10 lines by default) of each file to standard output.

If there more than one file, precede each with a header giving the file name. Use it as follow (specify more lines to display using -n option).

$ tail long-file OR $ tail -n 15 long-file

↥ Back To Top

talk

talk command is used to talk to another system/network user. To talk to a user on the same machine, use their login name, however, to talk to a user on another machine use ‘user@host’.

$ talk person [ttyname] OR $ talk‘user@host’ [ttyname]

↥ Back To Top

tar

tar command is a most powerful utility for archiving files in Linux.

$ tar -czf home.tar.gz .

Learn more about tar command and its usage on Linux.

  1. 18 Tar Command Examples in Linux
  2. How to Split Large ‘tar’ Archive into Multiple Files of Certain Size
  3. How to Extract Tar Files to Specific or Different Directory in Linux
↥ Back To Top

tee

tee command is used to read from standard input and prints to standard output and files as shown below.

$ echo “Testing how tee command works” tee file1
↥ Back To Top

tree

The tree command is a tiny, cross-platform command-line program used to recursively list or display the content of a directory in a tree-like format.

$ tree

↥ Back To Top

time

time command runs programs and summarizes system resource usage.

$ time wc /etc/hosts

↥ Back To Top

top

top program displays all processes on a Linux system in regards to memory and CPU usage and provides a dynamic real-time view of a running system.

$ top

↥ Back To Top

touch

touch command changes file timestamps, it can also be used to create a file as follows.

$ touch file.txt

↥ Back To Top

tr

tr command is a useful utility used to translate (change) or delete characters from stdin, and write the result to stdout or send to a file as follows.

$ cat domain-list.txt tr [:lower:] [:upper:]
↥ Back To Top

uname

uname command displays system information such as operating system, network node hostname kernel name, version and release etc.

Use the -a option to show all the system information:

$ uname

↥ Back To Top

uniq

uniq command displays or omits repeated lines from input (or standard input). To indicate the number of occurrences of a line, use the -c option.

$ cat domain-list.txt

↥ Back To Top

uptime

uptime command shows how long the system has been running, number of logged on users and the system load averages as follows.

$ uptime

↥ Back To Top

users

users command shows the user names of users currently logged in to the current host like this.

$ users

↥ Back To Top

vim/vi

vim (Vi Improved) popular text editor on Unix-like operating systems. It can be used to edit all kinds of plain text and program files.

$ vim file

Learn how to use vi/vim editor in Linux along with some tips and tricks.

  1. 10 Reasons Why You Should Use Vi/Vim Editor in Linux
  2. How to Install and Use Vi/Vim Editor in Linux
  3. How to Save a File in Vim Editor in Linux
  4. How to Exit a File in Vim Editor in Linux
  5. Learn Useful ‘Vi/Vim’ Editor Tips and Tricks to Enhance Your Skills
  6. 8 Interesting ‘Vi/Vim’ Editor Tips and Tricks for Every Linux Administrator
↥ Back To Top

w

w command displays system uptime, load averages and information about the users currently on the machine, and what they are doing (their processes) like this.

$ w

↥ Back To Top

wall

wall command is used to send/display a message to all users on the system as follows.

$ wall “This is TecMint – Linux How Tos”

↥ Back To Top

watch

watch command runs a program repeatedly while displaying its output on fullscreen. It can also be used to watch changes to a file/directory. The example below shows how to watch the contents of a directory change.

$ watch -d ls -l

↥ Back To Top

wc

wc command is used to display newline, word, and byte counts for each file specified, and a total for many files.

$ wc filename

↥ Back To Top

wget

wget command is a simple utility used to download files from the Web in a non-interactive (can work in the background) way.

$ wget -c http://ftp.gnu.org/gnu/wget/wget-1.5.3.tar.gz

↥ Back To Top

whatis

whatis command searches and shows a short or one-line manual page descriptions of the provided command name(s) as follows.

$ whatis wget

↥ Back To Top

which

which command displays the absolute path (pathnames) of the files (or possibly links) which would be executed in the current environment.

$ which who

↥ Back To Top

who

who command shows information about users who are currently logged in like this.

$ who

↥ Back To Top

whereis

whereis command helps us locate the binary, source and manual files for commands.

$ whereis cat

↥ Back To Top

xargs

xargs command is a useful utility for reading items from the standard input, delimited by blanks (protected with double or single quotes or a backslash) or newlines, and executes the entered command.

The example below show xargs being used to copy a file to multiple directories in Linux.

$ echo /home/aaronkilik/test/ /home/aaronkilik/tmp xargs -n 1 cp -v /home/aaronkilik/bin/sys_info.sh
↥ Back To Top

yes

yes command is used to display a string repeatedly until when terminated or killed using [Ctrl + C] as follows.

$ yes “This is TecMint - Linux HowTos”

↥ Back To Top

youtube-dl

youtube-dl is a lightweight command-line program to download videos and also extract MP3 tracks from YouTube.com and a few more sites.

The command below will list available formats for the video in the provided link.

$ youtube-dl –list-formats https://www.youtube.com/watch?v=iR

↥ Back To Top

zcmp/zdiff

zcmp and zdiff minimal utilities used to compare compressed files as shown in the examples below.

$ zcmp domain-list.txt.zip basic_passwords.txt.zip $ zdiff domain-list.txt.zip basic_passwords.txt.zip

↥ Back To Top

zip

zip is a simple and easy-to-use utility used to package and compress (archive) files.

$ tar cf - . | zip | dd of=/dev/nrst0 obs=16k $ zip inarchive.zip foo.c bar.c –out outarchive.zip $ tar cf - .| zip backup -

↥ Back To Top

zz

zz command is an alias of the fasd commandline tool that offers quick access to files and directories in Linux. It is used to quickly and interactively cd into a previously accessed directory by selecting the directory number from the first field as follows.

$ zz

That’s it for now! As we mentioned before, there are a countless number of commands in Linux. The list is possibly longer than we can offer. Use the feedback form below to share any useful and frequently used commands missing in this list.