Linux Commands Library

Discover and learn about essential Linux commands with syntax, examples, and detailed explanations

Browse by Category

📁

File Management

Manage files and directories on your system

lscpmvrm
👤

User Management

Create, modify, and manage user accounts

useradduserdelpasswdchage
⚙️

Process Management

Monitor and control system processes

pstopkillnice
🌐

Networking

Network configuration and troubleshooting

pingsshifconfignetstat
🔒

Permissions

Manage file and directory permissions

chmodchownchgrpumask
📦

Package Management

Install, update, and manage software packages

aptyumdnfpacman

All Commands (426)

web serverPopular

a2dismod

The <code>a2dismod</code> command is used to disable Apache2 modules. It removes symbolic links from the <code>/etc/apache2/mods-enabled</code> directory that were previously created by <code>a2enmod</code>. After disabling modules, Apache needs to be restarted to apply the changes.

a2dismod [OPTION]... [MODULE]...
web serverPopular

a2dissite

The <code>a2dissite</code> command is used to disable Apache2 website configurations. It removes symbolic links from the <code>/etc/apache2/sites-enabled</code> directory that were previously created by <code>a2ensite</code>. After disabling sites, Apache needs to be restarted to apply the changes.

a2dissite [OPTION]... [SITE]...
web server

a2enmod

The <code>a2enmod</code> command is used to enable Apache2 modules. It creates symbolic links from the <code>/etc/apache2/mods-available</code> directory to <code>/etc/apache2/mods-enabled</code>. After enabling modules, Apache needs to be restarted to apply the changes.

a2enmod [OPTION]... [MODULE]...
web server

a2ensite

The <code>a2ensite</code> command is used to enable Apache2 website configurations. It creates symbolic links from the <code>/etc/apache2/sites-available</code> directory to <code>/etc/apache2/sites-enabled</code>. After enabling a site, Apache needs to be restarted to apply the changes.

a2ensite [OPTION]... [SITE]...
web serverPopular

ab

The <code>ab</code> (Apache Benchmark) command is a performance testing tool for HTTP servers. It shows how your Apache installation performs by generating load to the server. This tool quickly identifies how many requests per second your Apache server is capable of handling.

ab [options] [http[s]://]hostname[:port]/path
process management

abort

The <code>abort</code> command is used to terminate a process abnormally. It generates a core dump and can be used to diagnose program errors or forcefully stop a process that is not responding.

abort [--help] [--version]
system managementPopular

ac

The <code>ac</code> command prints statistics about users' connect time on a Unix system. It reads the <code>/var/log/wtmp</code> file (or the file specified with the -f option) and reports the total connect time for all users or individual users.

ac [options] [users...]
file managementPopular

access

The <code>access</code> command checks whether the calling user or process has access permissions for a file or files. It returns 0 (success) if the user has the specified access rights, and non-zero (failure) otherwise.

access [-acfmrwx] [-e] [-h] file ...
developmentPopular

aclocal

The <code>aclocal</code> command is part of the GNU Autotools suite. It generates an <code>aclocal.m4</code> file by scanning <code>configure.ac</code> or <code>configure.in</code> for uses of autoconf macros and collecting the required macro definitions into a single file for use with autoconf.

aclocal [OPTION]...
package management

add-apt-repository

The <code>add-apt-repository</code> command adds a new repository to the list of available APT package sources. It can add both standard repositories and Personal Package Archives (PPAs) to the system.

add-apt-repository [options] repository
user management

addgroup

The <code>addgroup</code> command creates a new group on the system. It is a more user-friendly alternative to the lower-level <code>groupadd</code> command, and is commonly used on Debian-based Linux distributions like Ubuntu.

addgroup [options] [--gid ID] [--system] [--group] group
user management

adduser

The <code>adduser</code> command creates a new user account on the system with a home directory and other default settings. It is a higher-level, more user-friendly alternative to the lower-level <code>useradd</code> command.

adduser [options] [--home DIR] [--shell SHELL] [--no-create-home] [--uid ID] [--firstuid ID] [--lastuid ID] [--gecos GECOS] [--ingroup GROUP | --gid ID] [--disabled-password] [--disabled-login] [--encrypt-home] [--add_extra_groups] [--quiet] user
shell

alias

The <code>alias</code> command creates or lists command aliases, allowing users to create shortcuts for longer commands or to customize command behavior with predefined options.

alias [name[=value] ...]
audio

alsamixer

The <code>alsamixer</code> command provides a text-based user interface for adjusting audio volume and settings using the ALSA (Advanced Linux Sound Architecture) sound system.

alsamixer [options]
audio

amixer

The <code>amixer</code> command is a command-line mixer for ALSA (Advanced Linux Sound Architecture) sound card drivers, allowing users to control audio settings and volume from the terminal.

amixer [options] [command]
system management

anacron

The <code>anacron</code> command runs commands periodically with a frequency specified in days, executing tasks that may have been missed while the system was powered off, unlike cron which requires the system to be running at the scheduled time.

anacron [-s] [-f] [-n] [-d] [-q] [-t anacrontab] [-S spooldir] [job...]
system management

apropos

The <code>apropos</code> command searches the manual page names and descriptions for keywords and displays a list of matching manual pages. It's essentially equivalent to using <code>man -k</code> and is useful for finding commands related to a specific topic when you don't know the exact command name.

apropos [OPTION...] KEYWORD...
package managementPopular

apt

The <code>apt</code> command is a high-level package management tool for Debian and Ubuntu-based Linux distributions, providing a user-friendly interface for installing, updating, removing, and managing software packages.

apt [options] command
package management

apt-cache

The <code>apt-cache</code> command is used to query the APT package cache on Debian-based systems, providing information about available packages, dependencies, versions, and package details.

apt-cache [options] command
package managementPopular

apt-get

The <code>apt-get</code> command is a powerful command-line tool for handling packages in Debian and Ubuntu-based Linux distributions, providing functionalities for installing, upgrading, configuring, and removing software packages.

apt-get [options] command
package managementPopular

apt-key

The <code>apt-key</code> command is used to manage the keys used by apt to authenticate packages. These keys are used to ensure that the packages downloaded by apt are from trusted sources.

apt-key [options] command [arguments]
package management

apt-mark

The <code>apt-mark</code> command is used to mark packages as manually or automatically installed and to manipulate the dpkg selections, such as hold, unhold, install, or remove.

apt-mark [options] {auto|manual|hold|unhold|showauto|showmanual|showhold} [package...]
system informationPopular

arch

The <code>arch</code> command displays the machine architecture name of the current system. It is a simple command that prints the hardware name in a standard format.

arch
multimedia

arecord

The <code>arecord</code> command is a command-line sound recorder and player for the ALSA (Advanced Linux Sound Architecture) sound system. It can be used to record audio from various input sources such as microphones, line-in, and capture monitors.

arecord [options] [filename]
networking

arp

The <code>arp</code> command manipulates or displays the kernel's IPv4 network neighbor cache. It can add entries to the table, delete entries, or display the current content of the ARP cache.

arp [-vn] [-H type] [-i if] [-a] [hostname]
arp [-v] [-i if] -d hostname [pub]
arp [-v] [-H type] [-i if] -s hostname hw_addr [temp]
arp [-v] [-H type] [-i if] -s hostname hw_addr [netmask nm] pub
arp [-v] [-H type] [-i if] -Ds hostname ifname [netmask nm] pub
networking

arping

The <code>arping</code> command sends ARP (Address Resolution Protocol) requests to a neighboring host or gateway and displays the responses. It is useful for network troubleshooting, checking for duplicate IP addresses, and confirming connectivity at the link layer.

arping [options] destination
programming

as

The <code>as</code> command is the GNU assembler. It is used to convert assembly language code into object files that can be linked to create executable programs. It is a key component in the compilation toolchain.

as [options] -o objfile file.s
text processing

aspell

The <code>aspell</code> command is a spell checker that can be used interactively or in batch mode to check the spelling of text files. It offers suggestions for misspelled words and can be customized with different dictionaries and personal word lists.

aspell [options] <command>
process management

at

The <code>at</code> command is used to schedule commands to be executed once at a later time. Unlike cron, which is used for recurring tasks, at is ideal for one-time scheduled tasks.

at [-V] [-q queue] [-f file] [-mMlv] timespec...
at [-V] [-q queue] [-f file] [-mMkv] [-t time]
process management

atq

The <code>atq</code> command lists the pending jobs for the at command scheduler. It displays the job number, date, hour, queue, and username for each scheduled task.

atq [-V] [-q queue] [-v]
process management

atrm

The <code>atrm</code> command removes jobs that were previously scheduled with the <code>at</code> command. It deletes jobs from the queue of tasks to be run at a later time.

atrm [-V] job [job...]
networking

authorized_keys

The <code>~/.ssh/authorized_keys</code> file is a configuration file that specifies which SSH public keys are allowed to log into a user's account without a password. Each line of the file contains one public key, and the file is used by the SSH server to authenticate users via public key authentication.

Located at: ~/.ssh/authorized_keys
Linux/UnixLearn more →
text processingPopular

awk

The <code>awk</code> command is a powerful text processing tool that treats each line of a file as a record and each word as a field. It's designed for pattern scanning and processing, making it excellent for data extraction and reporting from text files.

awk [options] 'program' file...
awk [options] -f program-file file...
file management

basename

The <code>basename</code> command strips directory and suffix from filenames. It is used to extract just the filename from a path or to remove a suffix from a filename.

basename NAME [SUFFIX]
basename OPTION... NAME...
shells

bash

The <code>bash</code> (Bourne-Again SHell) is a command processor that typically runs in a text window where the user types commands that cause actions. Bash can also read and execute commands from a file, called a shell script.

bash [options] [file [arguments]]
bash [options] -c command_string [arguments]
process managementPopular

batch

The <code>batch</code> command reads commands from standard input or a specified file and executes them when system load levels permit. Unlike <code>at</code>, which executes commands at a specific time, <code>batch</code> executes commands when the system load average drops below a threshold.

batch [file]
calculator

bc

The <code>bc</code> (basic calculator) is an arbitrary precision calculator language with syntax similar to C. It allows for interactive calculations as well as programming with variables, functions, and control statements.

bc [options] [file...]
bc -l [file...]
system utils

beep

The <code>beep</code> command generates a beep sound through the PC speaker or sound card. It's useful for providing audio notifications or alerts in scripts or terminal applications.

beep [options]
process management

bg

The <code>bg</code> command continues a suspended job in the background. It allows you to resume the execution of jobs that have been suspended (using Ctrl+Z) while returning control of the terminal to you.

bg [job_spec...]
disk managementPopular

blkid

The <code>blkid</code> command is a utility to locate and print block device attributes such as filesystem type, UUID, and volume label. It's commonly used for device identification and mounting filesystems.

blkid [options] [device...]
disk managementPopular

blockdev

The <code>blockdev</code> command is used to call block device ioctls from the command line. It allows administrators to get or set various attributes of block devices such as hard drives, SSDs, or partitions.

blockdev [options] [commands] device
system management

blogbench

The <code>blogbench</code> command is a benchmarking tool that simulates a busy file server by performing a mix of read, write, and rewrite operations similar to a blog server, allowing you to test the I/O performance of your storage devices.

blogbench [options] -d /path/to/test/directory
networking

bluetoothctl

The <code>bluetoothctl</code> command is an interactive command-line tool for controlling and managing Bluetooth devices on Linux systems. It provides a comprehensive set of functions for scanning, pairing, connecting, and configuring Bluetooth devices from the terminal.

bluetoothctl [command]
networking

brctl

Ethernet bridge administration tool for Linux

brctl [OPTIONS] COMMAND [BRIDGE] [INTERFACE]
shell builtins

break

The <code>break</code> command is a shell built-in that exits from a <code>for</code>, <code>while</code>, <code>until</code>, or <code>select</code> loop. It terminates the execution of the current loop and continues with the next command after the loop.

break [n]
Linux/UnixLearn more →
networking

bridge

Manage bridge addresses and devices with the iproute2 package

bridge [OPTIONS] COMMAND
file managementPopular

btrfs

Control and manage the Btrfs filesystem in Linux

btrfs [COMMAND] [OPTIONS] <args>
file compression

bunzip2

Decompress files compressed with bzip2

bunzip2 [OPTIONS] [FILE...]
file compressionPopular

bzcat

Decompress bzip2 files to standard output

bzcat [OPTIONS] [FILE...]
file compression

bzcmp

Compare bzip2 compressed files

bzcmp [cmp_options] FILE1 [FILE2]
file comparison

bzdiff

Compare bzip2 compressed files line by line

bzdiff [OPTIONS] FILE1 [FILE2]
bzmore [OPTIONS] FILE1 [FILE2]
file searchPopular

bzgrep

Search for patterns in bzip2 compressed files

bzgrep [OPTIONS] PATTERN [FILE...]
bzfgrep [OPTIONS] PATTERN [FILE...]
bzegrep [OPTIONS] PATTERN [FILE...]
file compression

bzip2

The <code>bzip2</code> command compresses files using the Burrows-Wheeler block sorting text compression algorithm and Huffman coding. It generally achieves better compression than gzip but is slower.

bzip2 [options] [filenames...]
bunzip2 [options] [filenames...]
file recovery

bzip2recover

Recover data from damaged bzip2 files

bzip2recover [damaged_file.bz2]
file viewing

bzless

View bzip2 compressed files using the less pager

bzless [options] file.bz2
file viewingPopular

bzmore

View bzip2 compressed files using the more pager

bzmore [file.bz2 ...]
date time

cal

Display a calendar in the terminal

cal [options] [[[day] month] year]
file management

cat

The <code>cat</code> command is one of the most frequently used commands in Linux/Unix-like operating systems. <code>cat</code> stands for "concatenate" and it can read, concatenate, and write file contents to the standard output.

cat [OPTION]... [FILE]...
file management

cd

The <code>cd</code> command is used to change the current working directory in Linux/Unix systems. <code>cd</code> stands for "change directory" and it's one of the most essential commands for navigating the filesystem.

cd [OPTION] [DIRECTORY]
disk management

cfdisk

Display or manipulate a disk partition table with a curses interface

cfdisk [options] [device]
user management

chage

Change user password expiry information

chage [options] LOGIN
file attributes

chattr

Change file attributes on a Linux file system

chattr [OPTION]... [+-=][ATTRIBUTES]... FILE...
file ownership

chgrp

Change group ownership of files or directories

chgrp [OPTION]... GROUP FILE...
chgrp [OPTION]... --reference=RFILE FILE...
system management

chkconfig

Tool for managing services in SysV init systems

chkconfig [--list] [--type type] [name]
chkconfig --add name
chkconfig --del name
chkconfig [--level levels] name <on|off|reset|resetpriorities>
Linux (RHEL/CentOS/Fedora)Learn more →
file permissions

chmod

Change file mode bits (permissions)

chmod [OPTION]... MODE[,MODE]... FILE...
chmod [OPTION]... OCTAL-MODE FILE...
chmod [OPTION]... --reference=RFILE FILE...
file ownership

chown

Change file owner and group

chown [OPTION]... [OWNER][:[GROUP]] FILE...
chown [OPTION]... --reference=RFILE FILE...
user management

chpasswd

Update passwords in batch mode

chpasswd [options]
system management

chroot

Run command or interactive shell with special root directory

chroot [OPTION] NEWROOT [COMMAND [ARG]...]
Linux/UnixLearn more →
file management

cksum

Calculate CRC checksum and byte count for a file

cksum [OPTION]... [FILE]...
Linux/UnixLearn more →
terminal controlPopular

clear

Clear the terminal screen

clear [OPTION]
Linux/UnixLearn more →
file management

cmp

Compare two files byte by byte

cmp [OPTION]... FILE1 [FILE2 [SKIP1 [SKIP2]]]
Linux/UnixLearn more →
text processingPopular

col

The <code>col</code> command filters reverse line feeds and converts whitespace in its input to spaces or tabs. It's primarily used to process text files containing backspace characters and other control characters often generated by certain text processors.

col [OPTION]...
file comparison

comm

Compare two sorted files line by line

comm [OPTION]... FILE1 FILE2
Linux/UnixLearn more →
shell builtinsPopular

command

Run a command, ignoring shell functions and aliases

command [-pVv] command [arg ...]
Linux/UnixLearn more →
file compression

compress

Compress files using the Lempel-Ziv coding

compress [-cfvd] [-b bits] [file ...]
Linux/UnixLearn more →
file management

cp

The <code>cp</code> command is used to copy files and directories from one location to another. It's one of the core utilities in Linux and Unix-like operating systems that supports various options for preserving attributes, handling symbolic links, and creating backups.

cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
Linux/UnixLearn more →
file archiving

cpio

Copy files to and from archives

cpio {-o|--create} [-0acvABLV] [-C bytes] [-H format] [-M message] [-O [[user@]host:]archive] [-F [[user@]host:]archive] [--file=[[user@]host:]archive] [--format=format] [--message=message] [--null] [--reset-access-time] [--verbose] [--dot] [--append] [--block-size=blocks] [--dereference] [--io-size=bytes] [--quiet] [--force-local] [--rsh-command=command] [--help] [--version] < name-list [> archive]

cpio {-i|--extract} [-bcdfmnrtsuvBSV] [-C bytes] [-E file] [-H format] [-M message] [-R [user][:.][group]] [-I [[user@]host:]archive] [-F [[user@]host:]archive] [--file=[[user@]host:]archive] [--make-directories] [--nonmatching] [--preserve-modification-time] [--numeric-uid-gid] [--rename] [--list] [--swap-bytes] [--swap] [--dot] [--unconditional] [--verbose] [--block-size=blocks] [--swap-halfwords] [--io-size=bytes] [--pattern-file=file] [--format=format] [--owner=[user][:.][group]] [--no-preserve-owner] [--message=message] [--force-local] [--no-absolute-filenames] [--sparse] [--only-verify-crc] [--quiet] [--rsh-command=command] [--help] [--version] [pattern...] [< archive]

cpio {-p|--pass-through} [-0adlmuvLV] [-R [user][:.][group]] [--null] [--reset-access-time] [--make-directories] [--link] [--preserve-modification-time] [--unconditional] [--verbose] [--dot] [--dereference] [--owner=[user][:.][group]] [--no-preserve-owner] [--sparse] [--help] [--version] destination-directory < name-list
Linux/UnixLearn more →
system scheduling

crontab

Schedule and manage cron jobs

crontab [-u user] file
crontab [-u user] [-l | -r | -e] [-i]
Linux/UnixLearn more →
file processing

csplit

Split a file into sections determined by context lines

csplit [OPTION]... FILE PATTERN...
Linux/UnixLearn more →
networking

curl

The <code>curl</code> command is a versatile tool for transferring data to or from a server using various protocols. It supports HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP, POP3, IMAP, SMTP, and many more. Primarily used for testing APIs, downloading files, and data transfer operations without user interaction.

curl [options] [URL...]
Linux/Unix/WindowsLearn more →
text processing

cut

The <code>cut</code> command is used to extract sections from each line of input. It can extract by character position, field separated by a delimiter, or bytes.

cut OPTION... [FILE]...
display

cvt

The <code>cvt</code> command calculates VESA CVT (Coordinated Video Timing) modelines for use with X server. It generates the appropriate modeline parameters for a given resolution and refresh rate.

cvt width height [refresh]
system

date

The <code>date</code> command displays or sets the system date and time. It can format the output in various ways, convert between time zones, and perform date arithmetic.

date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
calculator

dc

The <code>dc</code> command is an arbitrary precision calculator with reverse Polish notation. It supports unlimited precision arithmetic and features both interactive and script-based usage.

dc [options] [file...]
disk utilities

dd

The <code>dd</code> command is a powerful utility for converting and copying files with the ability to manipulate the data as it is being copied. It's often used for tasks such as backing up boot sectors, creating disk images, and performing low-level operations on storage devices.

dd [OPERAND]...
Linux/UnixLearn more →
system

debootstrap

The <code>debootstrap</code> command is used to install a basic Debian or Ubuntu system into a subdirectory of another, already installed system. It can be used to create a chroot environment, a container base image, or the first stage of a Debian-based operating system installation.

debootstrap [options] suite target [mirror [script]]
shell builtin

declare

The <code>declare</code> command is a built-in shell command in Bash that declares variables and sets their attributes. It allows for specifying variable types and properties, providing more control over how variables behave in shell scripts.

declare [options] [name[=value]]...
user managementPopular

delgroup

Remove a group from the system

delgroup [options] GROUP
Linux/UnixLearn more →
user management

deluser

The <code>deluser</code> command is used to remove users from the system. It is a friendlier frontend to the <code>userdel</code> command, providing additional options to manage user removal, including handling of the user's home directory and mail spool.

deluser [options] user
deluser --group [options] group
system managementPopular

depmod

Generate a dependency file for kernel modules

depmod [options] [version]
system management

df

Report file system disk space usage

df [OPTION]... [FILE]...
Linux/UnixLearn more →
file management

diff

Compare files line by line

diff [OPTION]... FILES
Linux/UnixLearn more →
file management

diff3

Compare three files line by line

diff3 [OPTION]... MYFILE OLDFILE YOURFILE
Linux/UnixLearn more →
networkingPopular

dig

Query DNS servers for various DNS records and perform DNS lookups

dig [@server] [name] [type] [options]
Linux/UnixLearn more →
file managementPopular

dir

List directory contents, similar to the ls command

dir [OPTION]... [FILE]...
Linux/UnixLearn more →
file management

dircolors

Set up color configuration for ls command output

dircolors [OPTION]... [FILE]
Linux/UnixLearn more →
file management

dirname

Strip last component from a file path, returning the directory part

dirname [OPTION] NAME...
Linux/UnixLearn more →
file management

dirs

Display the list of currently remembered directories in the directory stack

dirs [OPTION]
Linux/UnixLearn more →
system managementPopular

dmesg

Display or control the kernel ring buffer messages

dmesg [options]
Linux/UnixLearn more →
system management

dmidecode

Display hardware information from the BIOS/UEFI DMI tables

dmidecode [options]
Linux/UnixLearn more →
storage

dmsetup

Low-level logical volume management tool for Device Mapper

dmsetup [options] [command] [command_args]
Linux/UnixLearn more →
file managementPopular

dos2unix

Convert text file line endings from DOS/Windows format to Unix format

dos2unix [options] [file ...]
Linux/UnixLearn more →
file management

du

Estimate file space usage for files and directories

du [OPTION]... [FILE]...
Linux/UnixLearn more →
system managementPopular

dump

Backup utility for ext2/3/4 filesystems

dump [-level] [-flags] filesystem [files-to-dump]
system management

dumpe2fs

Dump ext2/ext3/ext4 filesystem information

dumpe2fs [options] device
utilitiesPopular

echo

The <code>echo</code> command displays text or variables to standard output. It is one of the simplest yet most frequently used commands in shell scripting, allowing users to print messages, variable values, or command outputs to the terminal or redirect them to files.

echo [OPTION]... [STRING]...
file managementPopular

ed

Line-oriented text editor

ed [options] [file]
Linux/UnixLearn more →
file management

egrep

Search for patterns using extended regular expressions

egrep [options] pattern [file...]
Linux/UnixLearn more →
system management

eject

Eject removable media such as CD/DVD discs or USB drives

eject [options] [device]
shell builtin

enable

Enable and disable shell built-in commands

enable [-a] [-dnps] [-f filename] [name ...]
Linux/UnixLearn more →
system management

env

Display, set, or remove environment variables

env [option]... [name=value]... [command [args]...]
Linux/UnixLearn more →
networking

ethtool

Display or modify Ethernet device settings

ethtool [options] devname
shell builtin

eval

Execute arguments as a shell command

eval [arguments]
Linux/UnixLearn more →
shell builtin

exec

Replace the current shell process with a specified command

exec [-cl] [-a name] [command [arguments...]]
Linux/UnixLearn more →
shell builtin

exit

Exit the shell with a status code

exit [n]
Linux/UnixLearn more →
text processing

expand

The <code>expand</code> command converts tabs in files to spaces. It's useful for ensuring consistent text formatting and making files more compatible with various text editors or display environments that might handle tabs differently.

expand [OPTION]... [FILE]...
shell builtinPopular

export

Set environment variables for child processes

export [-fn] [name[=value] ...] or export -p
Linux/UnixLearn more →
text processingPopular

expr

Evaluate expressions and display the results

expr EXPRESSION
Linux/UnixLearn more →
File Operations

FALSE

The FALSE command in Linux

false [options]
system management

fdisk

Manipulate disk partition table

fdisk [options] [device]
Linux/UnixLearn more →
process managementPopular

fg

Move job to the foreground

fg [job_spec]
Linux/UnixLearn more →
text processingPopular

fgrep

Search for fixed strings in files

fgrep [options] pattern [file...]
Linux/UnixLearn more →
file management

file

Determine file type

file [options] [file...]
Linux/UnixLearn more →
file management

find

The <code>find</code> command is used to search for files and directories in a directory hierarchy based on various criteria. It's one of the most powerful and flexible commands for locating files in a Linux/Unix system.

find [starting-point...] [expression]
user management

finger

Display information about system users

finger [options] [user[@host]]
Linux/UnixLearn more →
file management

flock

Manage file locks from shell scripts

flock [options] file|directory command [arguments]
Linux/UnixLearn more →
text processing

fmt

The <code>fmt</code> command is a simple text formatter that rewraps text paragraphs to fit within specified width limits. It's useful for formatting documentation, README files, and other plain text content to improve readability.

fmt [OPTION]... [FILE]...
text processing

fold

Wrap input lines to fit specified width

fold [options] [file...]
Linux/UnixLearn more →
shell programmingPopular

for

Shell loop construct for iterating through lists

for name [in words ...]; do commands; done
for (( expr1; expr2; expr3 )); do commands; done
Linux/UnixLearn more →
system management

free

Display amount of free and used memory in the system

free [options]
Linux/UnixLearn more →
system management

fsck

Check and repair a Linux filesystem

fsck [options] [filesystem...]
Linux/UnixLearn more →
system management

fstat

Display status information about open files

fstat [-f filename] [-M core] [-N system] [-p pid] [-u user] [file ...]
networking

ftp

The <code>ftp</code> command is a standard network file transfer program that allows you to transfer files between your local machine and remote servers using the File Transfer Protocol (FTP). It provides both interactive and automated modes for transferring files, managing directories, and controlling file permissions on remote servers.

ftp [options] [host [port]]
Linux/Unix/WindowsLearn more →
process managementPopular

fuser

The <code>fuser</code> command identifies processes using files or sockets. It helps you find which processes are accessing specific files, directories, or sockets, making it useful for troubleshooting and system administration. You can also use it to send signals to these processes, allowing you to terminate applications that are preventing operations like unmounting filesystems.

fuser [options] file|directory... 
fuser [options] [-n namespace] name...
Linux/UnixLearn more →
text processing

gawk

Pattern scanning and processing language - GNU version

gawk [options] -f program-file [file...]
Linux/UnixLearn more →
system management

getconf

Query system configuration variables

getconf [options] variable_name [pathname]
Linux/UnixLearn more →
system managementPopular

getent

Get entries from administrative database

getent database [key...]
Linux/UnixLearn more →
file management

getfacl

Display file access control lists

getfacl [options] file ...
Linux/UnixLearn more →
shell programming

getopts

Parse command options in shell scripts

getopts optstring name [arg...]
Linux/UnixLearn more →
user management

gpasswd

Administer the /etc/group file

gpasswd [option] group
Linux/UnixLearn more →
text processing

grep

The <code>grep</code> command is used to search for text patterns in files. It's a powerful tool for finding specific content in files or filtering command output based on regular expressions or string patterns.

grep [options] pattern [file...]
text processing

groff

The <code>groff</code> command (GNU troff) is a document formatting system that converts marked-up text files to formatted documents for display or printing. It's used for creating man pages, technical documentation, and other formatted documents with precise typographical control.

groff [OPTION]... [FILE]...
user management

groups

Print the groups a user is in

groups [username...]
Linux/UnixLearn more →
system management

grub-install

Install GRUB bootloader on a device

grub-install [options] [--target=target] [device]
system management

grub-mkconfig

Generate a GRUB configuration file

grub-mkconfig [options]
file management

gunzip

Decompress files compressed with gzip

gunzip [options] [file...]
Linux/UnixLearn more →
file management

gzip

Compress or decompress files

gzip [options] [files...]
Linux/UnixLearn more →
system managementPopular

halt

Stop the system

halt [options]
Linux/UnixLearn more →
shell builtin

hash

Display or manipulate the bash command hash table

hash [-lr] [-p pathname] [-dt] [name]
Linux/UnixLearn more →
file management

head

Output the first part of files

head [options] [file...]
Linux/UnixLearn more →
system management

help

The <code>help</code> command displays information about built-in shell commands. It provides a quick way to access documentation on bash shell commands directly from the terminal, showing their purpose, syntax, and available options.

help [PATTERN...]
file management

hexdump

Display file contents in hexadecimal, decimal, octal, or ASCII

hexdump [options] file
Linux/UnixLearn more →
shell builtin

history

Display or manipulate the command history list

history [options] [n]
Linux/UnixLearn more →
system administration

hostname

Show or set the system hostname

hostname [options] [name]
Linux/UnixLearn more →
process management

htop

The <code>htop</code> command is an enhanced interactive process viewer for Linux systems. It provides a full-color terminal interface that displays system summary information and a list of processes in a more user-friendly way than the traditional top command. htop offers advanced features like vertical and horizontal scrolling, tree view, and mouse operation.

htop [options]
Linux/UnixLearn more →
system administration

hwclock

Query or set the hardware clock (RTC)

hwclock [options]
text processing

iconv

Convert text from one character encoding to another

iconv [options] [-f from-encoding] [-t to-encoding] [input-file]...
Linux/UnixLearn more →
user management

id

Display user identity information

id [options] [username]
Linux/UnixLearn more →
networking

ifconfig

Configure or display network interface parameters

ifconfig [interface] [options] [address]
Linux/UnixLearn more →
networkingPopular

ifdown

Take down a network interface

ifdown [options] [interface]
Linux/UnixLearn more →
networking

ifup

Bring up a network interface

ifup [options] [interface]
Linux/UnixLearn more →
graphics

import

Capture an X server screen and save the image to a file

import [options] filename
Linux/UnixLearn more →
system managementPopular

info

The <code>info</code> command provides access to the GNU Info system, which offers comprehensive hypertext documentation for many GNU utilities and programs. Unlike <code>man</code> pages, which typically offer concise reference material, Info documents are more extensive, structured hierarchically, and include hyperlinks for easier navigation between topics.

info [OPTION]... [MENU-ITEM...]
monitoring

inotifywait

Wait for changes to files using inotify

inotifywait [options] [file/directory...]
monitoring

inotifywatch

Gather filesystem access statistics using inotify

inotifywatch [options] [file/directory...]
file management

install

Copy files and set attributes

install [options] source... destination
Linux/UnixLearn more →
system

iostat

Report CPU statistics and input/output statistics for devices and partitions

iostat [options] [device...] [interval [count]]
networking

ip

Show / manipulate routing, network devices, interfaces and tunnels

ip [options] object [command [arguments]]
networking

ipcalc

Calculate IP address information

ipcalc [options] [ip_address[/prefix]]
Linux/UnixLearn more →
networking

iperf

Measure network performance

iperf [-s|-c host] [options]
Linux/Unix/WindowsLearn more →
networking

iproute2

A collection of utilities for controlling TCP/IP networking and traffic control in Linux

Various commands including ip, tc, ss, bridge, rtacct, rtmon, etc.
networking

iptables

Administration tool for IPv4 packet filtering and NAT

iptables [-t table] command [chain] [rule-specification] [options]
networking

iptraf

Interactive colorful IP LAN monitor

iptraf [-h|-f|-z|-i interface|-g|-d interface|-s interface|-l|-t facility]
shell

jobs

Display status of jobs in the current shell session

jobs [-lnprs] [jobspec]
Linux/UnixLearn more →
text_processingPopular

join

Join lines of two files on a common field

join [options] file1 file2
Linux/UnixLearn more →
system

journalctl

Query and display messages from the systemd journal

journalctl [OPTIONS...] [MATCHES...]
system

kbd

A collection of tools for managing Linux console (keyboard and fonts)

Various commands including loadkeys, setfont, showkey, etc.
security

kdestroy

Destroy Kerberos tickets

kdestroy [-A] [-q] [-c cache_name] [-p principal_name]
Linux/Unix/macOSLearn more →
network

keepalive

TCP keepalive configuration utility for network connections

keepalive [options]
process management

kill

The <code>kill</code> command is used to send signals to processes, typically to terminate them. By default, it sends the TERM (terminate) signal, but it can send any specified signal to a process identified by its process ID (PID). The kill command is essential for process management and system administration tasks.

kill [options] PID...
Linux/UnixLearn more →
process management

killall

The <code>killall</code> command terminates processes by name rather than by process ID (PID). It can kill multiple processes with the same name simultaneously, making it more convenient than the <code>kill</code> command when you don't know or don't want to look up process IDs. Like <code>kill</code>, it can send any signal to the specified processes.

killall [options] name...
Linux/UnixLearn more →
security

kinit

Obtain and cache Kerberos ticket-granting ticket

kinit [options] [principal]
Linux/Unix/macOSLearn more →
security

klist

List Kerberos tickets in credential cache

klist [options]
Linux/Unix/macOSLearn more →
system

kmod

Manage Linux kernel modules

kmod [options] command [command_options]
system

last

Show listing of last logged in users

last [options] [username...] [tty...]
Linux/UnixLearn more →
securityPopular

lastb

Show listing of last bad login attempts

lastb [options] [username...] [tty...]
Linux/UnixLearn more →
securityPopular

lastlog

Display information about the most recent login of all users

lastlog [options]
Linux/UnixLearn more →
text_processing

less

File pager that allows backward and forward navigation through file contents

less [options] file...
Linux/Unix/macOSLearn more →
shell

let

Perform arithmetic operations on shell variables

let expression [expression ...]
Linux/UnixLearn more →
file_managementPopular

link

Create a hard link to a file

link source_file target_file
Linux/UnixLearn more →
file management

ln

The <code>ln</code> command is used to create links between files in Linux/Unix systems. It can create both hard links and symbolic (soft) links, allowing multiple filenames to point to the same file or directory.

ln [OPTION]... [-T] TARGET LINK_NAME
ln [OPTION]... TARGET
ln [OPTION]... TARGET... DIRECTORY
ln [OPTION]... -t DIRECTORY TARGET...
file management

loadkeys

Load keyboard translation tables

loadkeys [options] [keymap]
Linux/UnixLearn more →
file management

locate

The <code>locate</code> command quickly finds files by name on a Linux system. It searches a database built by <code>updatedb</code> rather than scanning the filesystem in real-time, making it much faster than <code>find</code> for basic file name searches.

locate [OPTION]... PATTERN...
file managementPopular

logger

Add entries to the system log

logger [options] [message]
Linux/UnixLearn more →
file management

login

Begin a session on the system

login [options] [username]
Linux/UnixLearn more →
file management

logname

Print the name of the current user

logname [options]
Linux/UnixLearn more →
file managementPopular

logout

Exit a login shell

logout
Linux/UnixLearn more →
file management

look

Display lines beginning with a given string

look [options] string [file]
Linux/UnixLearn more →
disk management

losetup

Set up and control loop devices

losetup [options] [loopdev] [file]
Linux/UnixLearn more →
system administration

lpc

Line printer control program

lpc [command [argument ...]]
Linux/UnixLearn more →
system administration

lpr

Print files

lpr [options] [file...]
Linux/UnixLearn more →
system administration

lprint

Print a file

lprint [options] [file...]
Linux/UnixLearn more →
system administration

lprintd

Abort a print job

lprintd [options] [job_id...]
Linux/UnixLearn more →
system administration

lprintq

List the print queue

lprintq [options]
Linux/UnixLearn more →
system administration

lprm

Remove jobs from the print queue

lprm [options] [job_id...]
Linux/UnixLearn more →
file managementPopular

ls

The <code>ls</code> command is one of the most basic and frequently used commands in Linux/Unix systems. <code>ls</code> stands for "list" and it lists the contents of directories, showing files and subdirectories.

ls [OPTION]... [FILE]...
file attributes

lsattr

List file attributes on a Linux file system

lsattr [options] [files...]
disk managementPopular

lsblk

List information about block devices

lsblk [options] [device...]
system informationPopular

lscpu

Display information about the CPU architecture

lscpu [options]
system information

lshw

List hardware information

lshw [options]
user management

lslogins

Display information about user accounts

lslogins [options] [username...]
system information

lsmod

Show the status of loaded kernel modules

lsmod
system information

lsof

List open files

lsof [options]
Linux/UnixLearn more →
hardware informationPopular

lspci

List all PCI devices

lspci [options]
hardware information

lsscsi

List SCSI devices or hosts

lsscsi [options]
hardware informationPopular

lsusb

List USB devices

lsusb [options]
debugging

ltrace

A library call tracer

ltrace [options] [command [arg...]]
text processing

m4

Macro processor

m4 [options] [files]
Linux/UnixLearn more →
development

make

Build automation tool

make [options] [target...]
Linux/UnixLearn more →
system management

man

The <code>man</code> command is used to display the manual pages (documentation) for commands, utilities, functions, and files in Unix-like operating systems. It provides a standardized way to access comprehensive documentation for almost every command and feature available on the system.

man [OPTION]... [SECTION] NAME...
system managementPopular

mandb

The <code>mandb</code> command creates or updates the manual page index caches (databases) used by <code>man</code>, <code>apropos</code>, and <code>whatis</code>. It indexes the contents of all manual pages to enable fast searching based on names, descriptions, and keywords.

mandb [OPTION...]
shell builtin

mapfile

Read lines from standard input into an indexed array variable

mapfile [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array]
Linux/Unix (Bash)Learn more →
file management

md5sum

Compute and check MD5 message digest

md5sum [OPTION]... [FILE]...
Linux/UnixLearn more →
system information

mdu

Display disk usage in megabytes

mdu [options] [file...]
Linux/UnixLearn more →
system administration

mesg

Control write access to your terminal

mesg [y|n]
Linux/UnixLearn more →
file management

mkdir

The <code>mkdir</code> command is used to create directories (folders) in Linux/Unix systems. <code>mkdir</code> stands for "make directory" and is essential for organizing files and creating new storage locations.

mkdir [OPTION]... DIRECTORY...
disk management

mke2fs

Create an ext2/ext3/ext4 filesystem

mke2fs [options] device [blocks-count]
file management

mkfifo

Make FIFOs (named pipes)

mkfifo [OPTION]... NAME...
Linux/UnixLearn more →
system administration

mknod

Make block or character special files

mknod [OPTION]... NAME TYPE [MAJOR MINOR]
Linux/UnixLearn more →
file management

mktemp

Create a temporary file or directory

mktemp [OPTION]... [TEMPLATE]
Linux/UnixLearn more →
file management

mlocate

The <code>mlocate</code> command (Merging Locate) is a secure implementation of the locate command that maintains file ownership/permission information and merges new file entries incrementally. It provides a fast way to search the filesystem by using a previously built database.

mlocate [OPTION]... PATTERN...
file management

mmv

Move/rename multiple files using patterns

mmv [options] from_pattern to_pattern
Linux/UnixLearn more →
text processing

more

Display file content one screen at a time

more [options] [file...]
Linux/UnixLearn more →
system administration

mount

Mount a filesystem

mount [-t fstype] [-o options] device dir
Linux/UnixLearn more →
networking

mtr

Network diagnostic tool combining ping and traceroute

mtr [options] hostname
Linux/UnixLearn more →
communication

mutt

Text-based email client for Unix-like systems

mutt [options] [-Z] [-f mailbox] [-e command] [--] [addresses...]
Linux/UnixLearn more →
file management

mv

The <code>mv</code> command is used to move or rename files and directories in Linux and Unix-like operating systems. It can move files between directories and rename them in a single operation while preserving file attributes.

mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...
Linux/UnixLearn more →
database tools

myisamchk

Check, repair, or optimize MyISAM tables in MySQL databases

myisamchk [options] tbl_name [...]
Linux/UnixLearn more →
database tools

myisamlog

Display contents of MyISAM log file

myisamlog [options] [log_file [table_name] ...]
Linux/UnixLearn more →
file management

namei

Follow a pathname until a terminal point is found

namei [options] pathname [pathname...]
Linux/UnixLearn more →
text processing

nano

A simple command-line text editor

nano [options] [[+line[,column]] file]...
Linux/UnixLearn more →
networkingPopular

nc

Netcat utility for reading from and writing to network connections

nc [options] [hostname] [port]
Linux/UnixLearn more →
networking

netcat

Networking utility for reading from and writing to network connections

netcat [options] [hostname] [port]
Linux/UnixLearn more →
networkingPopular

netstat

Display network connections, routing tables, interface statistics, masquerade connections, and multicast memberships

netstat [options]
Linux/UnixLearn more →
process managementPopular

nice

Run a command with modified scheduling priority

nice [option] [command [arguments...]]
Linux/UnixLearn more →
text processing

nl

Number lines of files

nl [options] [file]
Linux/UnixLearn more →
networking

nmap

Network exploration tool and security scanner

nmap [scan type] [options] {target specification}
Linux/Unix/WindowsLearn more →
process management

nohup

Run a command immune to hangups, with output to a non-tty

nohup COMMAND [ARG]...
Linux/UnixLearn more →
system

nproc

Print the number of processing units available

nproc [OPTION]
Linux/UnixLearn more →
text processing

nroff

The <code>nroff</code> command is a text formatting program for Unix/Linux that formats documents for display on terminals and line printers. It's a component of the groff document formatting system specifically tailored for producing plain text output.

nroff [OPTION]... [FILE]...
networking

nslookup

Query Internet name servers for domain name or IP address mapping

nslookup [options] [hostname/IP] [server]
Linux/Unix/WindowsLearn more →
filesystem

ntfsfix

Fix common errors and force Windows to check NTFS filesystem

ntfsfix [options] device
Linux/UnixLearn more →
systemPopular

ntpdate

Set the system date and time via NTP

ntpdate [options] server [server...]
Linux/UnixLearn more →
system

ntpq

NTP query utility for monitoring NTP daemon ntpd operations

ntpq [options] [host...]
Linux/UnixLearn more →
system

numactl

Control NUMA policy for processes or shared memory

numactl [options] -- program [arguments]
development

objcopy

Copy and translate object files

objcopy [options] input-file [output-file]
Linux/UnixLearn more →
development

objdump

Display information from object files

objdump [options] file...
Linux/UnixLearn more →
file

od

Dump files in octal and other formats

od [options] [file...]
Linux/UnixLearn more →
file

open

Open files, directories, or URLs with default applications

open [options] file/URL...
macOS/LinuxLearn more →
securityPopular

openssl

Cryptography and SSL/TLS toolkit

openssl command [command_options] [command_arguments]
Linux/Unix/WindowsLearn more →
networkPopular

openvpn

Secure Virtual Private Network daemon

openvpn [options] [config_file]
Linux/Unix/WindowsLearn more →
package

opkg

Lightweight package management system for embedded Linux devices

opkg [options] sub-command [arguments]
Embedded LinuxLearn more →
system

parted

A disk partition manipulation program

parted [options] [device [command [arguments]...]]
Linux/UnixLearn more →
userPopular

passwd

Change user password

passwd [options] [username]
Linux/UnixLearn more →
text

paste

Merge lines of files horizontally

paste [options] [file...]
Linux/UnixLearn more →
development

patch

Apply a diff file to an original

patch [options] [originalfile [patchfile]]
Linux/UnixLearn more →
file

pathchk

Check whether file names are valid or portable

pathchk [options] name...
Linux/UnixLearn more →
system

perf

Performance analysis tool for Linux

perf [--version] [--help] [OPTIONS] COMMAND [ARGS]
development

perl

The Perl 5 language interpreter

perl [options] [program_file] [arguments]
Linux/UnixLearn more →
databasePopular

pg_dump

Extract a PostgreSQL database into a script file or other archive file

pg_dump [connection-option...] [option...] [dbname]
Linux/UnixLearn more →
databasePopular

pg_restore

Restore a PostgreSQL database from an archive file created by pg_dump

pg_restore [connection-option...] [option...] [filename]
Linux/UnixLearn more →
network

ping

Send ICMP ECHO_REQUEST to network hosts

ping [options] destination
Linux/UnixLearn more →
process management

pkill

The <code>pkill</code> command sends signals to processes based on their name and other attributes. It's a more flexible alternative to <code>killall</code>, allowing pattern matching and filtering by various process attributes like terminal, parent PID, user, and more. This makes it a powerful tool for targeted process management.

pkill [options] pattern
Linux/UnixLearn more →
file managementPopular

popd

Remove a directory from the directory stack

popd [+N | -N]
Linux/UnixLearn more →
text processing

pr

The <code>pr</code> command formats text files for printing. It can paginate text with headers and footers, create multi-column output, merge files side by side, and adjust various formatting elements like margins and page length.

pr [OPTION]... [FILE]...
system

printenv

Print all or part of the environment

printenv [OPTION]... [VARIABLE]...
Linux/UnixLearn more →
text processing

printf

Format and print data

printf FORMAT [ARGUMENT]...
Linux/UnixLearn more →
process management

ps

The <code>ps</code> command displays information about active processes running on the system. It provides a snapshot of the current processes along with detailed information about resource usage, status, and other process attributes.

ps [options]
Linux/UnixLearn more →
processPopular

pstree

Display a tree of processes

pstree [options] [pid|user]
Linux/UnixLearn more →
file management

pwd

Print name of current/working directory

pwd [OPTION]...
Linux/UnixLearn more →
virtualization

qemu

Quick Emulator, a generic machine emulator and virtualizer

qemu-system-[arch] [options] [disk_image]
Linux/UnixLearn more →
system

quota

Display disk usage and limits for a user or group

quota [options] [user|group]
Linux/UnixLearn more →
system

quotacheck

Scan a filesystem for disk usage and create, check, or repair quota files

quotacheck [options] [filesystem...]
Linux/UnixLearn more →
system

quotactl

Manipulate disk quotas

quotactl command special [id quota]
Linux/UnixLearn more →
storagePopular

ram

Create a RAM disk or display information about RAM disks

ram [options] size
Linux/UnixLearn more →
storage

ramdisk

Create and manage RAM-based virtual disk drives

ramdisk [options] [size]
Linux/UnixLearn more →
shell builtin

read

Read a line from standard input or a file descriptor

read [options] [variable...]
Linux/UnixLearn more →
shell builtin

readarray

Read lines from standard input into an array variable

readarray [options] array
Linux/UnixLearn more →
shell builtinPopular

readonly

Mark variables or functions as read-only

readonly [options] [name[=value] ...]
Linux/UnixLearn more →
system

reboot

Restart the system

reboot [options]
Linux/UnixLearn more →
file management

rename

Rename multiple files using pattern substitution

rename [options] expression replacement file...
Linux/UnixLearn more →
process

renice

Alter priority of running processes

renice priority [[-p] pid...] [[-g] pgrp...] [[-u] user...]
Linux/UnixLearn more →
storage

repart

Repartition a disk or update partition tables

repart [options] device
terminal

reset

Reset the terminal

reset [options]
Linux/UnixLearn more →
text processing

rev

Reverse lines of a file or standard input

rev [file...]
Linux/UnixLearn more →
file management

rm

The <code>rm</code> command is used to remove files and directories in Linux/Unix systems. <code>rm</code> stands for "remove" and it's a powerful command that can delete files, directories, and their contents permanently.

rm [OPTION]... [FILE]...
file managementPopular

rmdir

The <code>rmdir</code> command is used to remove empty directories from the filesystem in Linux/Unix systems. <code>rmdir</code> stands for "remove directory" and is a safe way to delete directories as it will only work if the directory is empty.

rmdir [OPTION]... DIRECTORY...
file transfer

rsync

The <code>rsync</code> command is a fast, versatile file copying and synchronization tool that efficiently transfers and synchronizes files between directories or across computers. It is widely used for backups, mirroring, and maintaining identical copies of data.

rsync [OPTION]... SRC [SRC]... DEST
rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST
rsync [OPTION]... [USER@]HOST:SRC [DEST]
Linux/UnixLearn more →
system

rtcwake

Enter a system sleep state until specified wakeup time

rtcwake [options]
system

runlevel

Display the current and previous system runlevel

runlevel [options]
Linux/UnixLearn more →
system

runuser

Run a command with substitute user and group ID

runuser [options] -u user [--] [command [args...]]
system

sar

Collect, report, or save system activity information

sar [options] [interval [count]]
Linux/UnixLearn more →
networking

scp

The <code>scp</code> (Secure Copy) command is used to securely transfer files between hosts on a network. It uses SSH for data transfer and provides the same authentication and security as SSH. SCP is ideal for safely copying files across untrusted networks.

scp [OPTION] [[user@]src_host:]file1 ... [[user@]dst_host:]file2
Linux/UnixLearn more →
text processing

sdiff

Side-by-side merge of file differences

sdiff [options] file1 file2
Linux/UnixLearn more →
text processing

sed

The <code>sed</code> command (stream editor) is used for parsing and transforming text files line by line. It's a powerful tool for text manipulation that performs operations like search, find and replace, insertion, and deletion on text streams.

sed [OPTION]... {script} [input-file]...
sed [OPTION]... -f script-file [input-file]...
shell builtinPopular

select

Create an interactive selection menu in the shell

select name [in words ...]; do commands; done
Linux/UnixLearn more →
text processing

seq

Print a sequence of numbers

seq [options] [first [increment]] last
Linux/UnixLearn more →
shell builtinPopular

set

Set or unset shell options and positional parameters

set [options] [arguments]
Linux/UnixLearn more →
file management

setfacl

Set file access control lists (ACLs)

setfacl [options] acl_spec file...
networking

sftp

The <code>sftp</code> (Secure File Transfer Protocol) command provides an interactive file transfer program with functionality similar to FTP but operates over an encrypted SSH connection. It offers secure file transfer capabilities with additional features like resuming transfers and directory operations.

sftp [OPTION] [[user@]host[:file [file]]]
Linux/UnixLearn more →
shell builtinPopular

shift

Shift positional parameters in a shell script

shift [n]
Linux/UnixLearn more →
shell builtin

shopt

Set and unset shell options

shopt [-pqsu] [-o] [optname...]
Linux/UnixLearn more →
system administrationPopular

shutdown

Shut down, reboot, or halt the system

shutdown [options] [time] [message]
Linux/UnixLearn more →
process management

sleep

Delay for a specified amount of time

sleep number[suffix]...
Linux/UnixLearn more →
text processing

sort

Sort lines of text files

sort [options] [file...]
Linux/UnixLearn more →
shell builtin

source

Execute commands from a file in the current shell

source filename [arguments]
Linux/UnixLearn more →
file processing

split

Split a file into pieces

split [options] [input [prefix]]
Linux/UnixLearn more →
database

sqlite3

Command-line interface for SQLite 3 databases

sqlite3 [options] [database] [SQL statements]
Linux/UnixLearn more →
networking

ssh

The <code>ssh</code> (Secure Shell) command is a secure protocol used to remotely connect to and manage systems over an encrypted network connection. It allows for secure remote logins, command execution, file transfers, and port forwarding with strong encryption and authentication mechanisms.

ssh [options] [user@]hostname [command]
Linux/Unix/WindowsLearn more →
networking

ssh-add

The <code>ssh-add</code> command adds SSH private keys to the SSH authentication agent (ssh-agent). It allows you to load your keys into memory so you can use SSH without entering your passphrase each time, while keeping your keys securely encrypted on disk.

ssh-add [options] [file ...]
Linux/Unix/WindowsLearn more →
networkingPopular

ssh-agent

The <code>ssh-agent</code> command starts an authentication agent that can store private keys for SSH authentication. It allows users to authenticate to SSH servers without having to constantly re-enter their private key passphrase, providing both convenience and security by keeping keys encrypted on disk but available for use during a session.

ssh-agent [options] [command [args ...]]
Linux/Unix/WindowsLearn more →
networkingPopular

ssh-copy-id

The <code>ssh-copy-id</code> command installs an SSH public key on a remote server as an authorized key. This enables secure passwordless SSH logins to the remote system, allowing you to authenticate using your private key instead of typing your password each time.

ssh-copy-id [options] [-i [identity_file]] [user@]hostname
Linux/Unix/WindowsLearn more →
networking

ssh-keygen

The <code>ssh-keygen</code> command is used to generate, manage, and convert authentication keys for SSH (Secure Shell). It creates public/private key pairs for secure passwordless authentication, and provides various options for key type selection, key conversion, and key management.

ssh-keygen [options]
Linux/Unix/WindowsLearn more →
file system

stat

Display file or file system status

stat [options] file...
Linux/UnixLearn more →
debuggingPopular

strace

Trace system calls and signals

strace [options] [command [args]]
file analysis

strings

Print the printable character sequences in files

strings [options] [file...]
Linux/UnixLearn more →
user management

su

Switch user or substitute user

su [options] [username]
Linux/UnixLearn more →
system administration

sudo

Execute a command as another user

sudo [options] [command]
Linux/UnixLearn more →
file integrity

sum

Compute checksum and count blocks in a file

sum [options] [file...]
Linux/UnixLearn more →
system administration

svc

Control services monitored by supervise or daemontools

svc [options] service_directories...
Linux/UnixLearn more →
system administration

swapoff

Disable devices and files for swapping

swapoff [options] [special]
Linux/UnixLearn more →
system administration

swapon

Enable devices and files for swapping

swapon [options] [special]
Linux/UnixLearn more →
system administration

sync

Synchronize cached writes to persistent storage

sync [options] [file...]
Linux/UnixLearn more →
system administrationPopular

sysctl

Configure kernel parameters at runtime

sysctl [options] [variable[=value]] [...]
system administration

systemctl

Control the systemd system and service manager

systemctl [options] command [name...]
system administration

systemd

System and service manager for Linux operating systems

systemd [options...]
system administrationPopular

systool

View and manage sysfs devices, buses, drivers, and modules

systool [options] [path...]
file management

tac

Concatenate and print files in reverse (opposite of cat)

tac [OPTION]... [FILE]...
Linux/UnixLearn more →
file management

tail

Output the last part of files

tail [OPTION]... [FILE]...
Linux/UnixLearn more →
file management

tar

Tape Archive: create, extract, and manipulate archive files

tar [options] [archive-file] [file or directory to be archived]
Linux/UnixLearn more →
process management

taskset

Set or retrieve a process's CPU affinity

taskset [options] mask command [argument...]
taskset [options] -p [mask] pid
networking

tcpdump

Dump network traffic, analyze and capture packets

tcpdump [options] [expression]
Linux/UnixLearn more →
utilitiesPopular

tee

The <code>tee</code> command reads from standard input and writes to both standard output and one or more files simultaneously. This allows you to view output in your terminal while also saving it to a file, making it invaluable for logging and debugging.

tee [OPTION]... [FILE]...
system administration

telinit

Change SysV init runlevel or systemd system state

telinit [option] <runlevel>
Linux/UnixLearn more →
shell scripting

test

Check file types and compare values

test EXPRESSION
[ EXPRESSION ]
[ OPTION
Linux/UnixLearn more →
performance monitoring

time

Measure program execution time

time [options] command [arguments...]
Linux/UnixLearn more →
process managementPopular

timeout

Run a command with a time limit

timeout [OPTION] DURATION COMMAND [ARG]...
process management

times

Display process time information for the current shell and its children

times
Linux/UnixLearn more →
process management

top

The <code>top</code> command provides a dynamic real-time view of a running system. It displays system summary information and a list of processes or threads currently being managed by the Linux kernel. It shows CPU usage, memory usage, swap usage, and the most CPU-intensive tasks running on the system, all updated in real-time.

top [options]
Linux/UnixLearn more →
file managementPopular

touch

Change file timestamps or create empty files

touch [OPTION]... FILE...
Linux/UnixLearn more →
text processing

tr

The <code>tr</code> command (translate) is used to translate, squeeze, and/or delete characters from standard input, writing to standard output. It's a simple yet powerful tool for character-level text transformations.

tr [OPTION]... SET1 [SET2]
networking

traceroute

Print the route packets take to a network host

traceroute [options] host [packetsize]
Linux/UnixLearn more →
shell scripting

trap

Set up signal handlers in shell scripts

trap [OPTIONS] [[ARG] SIGNAL...]
Linux/UnixLearn more →
text processing

troff

The <code>troff</code> command (typesetter roff) is a document formatting system for Unix-like operating systems that formats text for typesetter and printing devices. It's the foundation of the groff formatting system and provides detailed control over document typography and layout.

troff [OPTION]... [FILE]...
Text Processing

TRUE

The TRUE command in Linux

true [options]
text processing

ts

Add timestamp to each line of input

ts [options] [format]
Linux/UnixLearn more →
system administration

tty

Print the file name of the terminal connected to standard input

tty [OPTION]...
Linux/UnixLearn more →
networkingPopular

tunctl

Create and manage persistent TUN/TAP interfaces

tunctl [-t device-name] [-u owner] [-g group] [-b] [-f tun-clone-device] [-d device-name]
shell builtin

type

Display information about command type

type [-afptP] name [name ...]
Linux/UnixLearn more →
system administration

udevadm

udev management tool for device detection and configuration

udevadm [--help] [--version] [--debug] COMMAND [OPTIONS]
shell builtin

ulimit

Get and set user limits for system resources

ulimit [-HSabcdefiklmnpqrstuvxPT] [limit]
Linux/UnixLearn more →
shell builtin

umask

Set file mode creation mask

umask [-p] [-S] [mode]
Linux/UnixLearn more →
file management

umount

Unmount file systems

umount [options] <source> | <directory>
Linux/UnixLearn more →
system informationPopular

uname

Print system information

uname [OPTION]...
Linux/UnixLearn more →
text processing

unexpand

The <code>unexpand</code> command converts spaces in files to tabs. It's the counterpart to the expand command and is useful for reducing file size or formatting files according to specific requirements that prefer tabs over spaces.

unexpand [OPTION]... [FILE]...
text processing

uniq

Report or omit repeated lines

uniq [OPTION]... [INPUT [OUTPUT]]
Linux/UnixLearn more →
utilities

units

Convert quantities between different units

units [options] [from-unit [to-unit]]
Linux/UnixLearn more →
shell builtinPopular

unset

Remove variable or function names from the shell environment

unset [-fv] [name ...]
Linux/UnixLearn more →
system administration

unshare

Run program in new namespaces

unshare [options] [program [arguments]]
shell builtin

until

Execute commands until a condition is true

until test-commands; do consequent-commands; done
Linux/UnixLearn more →
file management

updatedb

The <code>updatedb</code> command updates the file name database used by the <code>locate</code> command. It scans your filesystem and builds a database of file names and locations, which allows for fast file searches without having to scan the filesystem in real-time.

updatedb [OPTION...]
system information

uptime

Tell how long the system has been running

uptime [options]
Linux/UnixLearn more →
user managementPopular

useradd

Create a new user or update default new user information

useradd [options] LOGIN
Linux/UnixLearn more →
user management

userdel

Delete a user account and related files

userdel [options] LOGIN
Linux/UnixLearn more →
user management

usermod

Modify a user account

usermod [options] LOGIN
Linux/UnixLearn more →
user management

users

Print the usernames of users currently logged in

users [OPTION]... [FILE]
Linux/UnixLearn more →
process management

usleep

Suspend execution for microsecond intervals

usleep microseconds
Linux/UnixLearn more →
file system

ustat

Display file system statistics

ustat [-fv] device
Linux/UnixLearn more →
file processing

uudecode

Decode a file created by uuencode

uudecode [options] [file...]
Linux/UnixLearn more →
file processing

uuencode

Encode a binary file into ASCII for transmission

uuencode [-m] [file] name
Linux/UnixLearn more →
file system

vdir

List directory contents in a verbose, multi-column format

vdir [OPTION]... [FILE]...
Linux/UnixLearn more →
text editors

vi

Screen-oriented (visual) text editor

vi [options] [file...]
Linux/UnixLearn more →
text editors

vim

Vi IMproved, a programmers text editor

vim [options] [file...]
Linux/UnixLearn more →
system monitoringPopular

vmstat

Report virtual memory statistics

vmstat [options] [delay [count]]
Linux/UnixLearn more →
file system

volname

Return volume name for a device

volname [device]
Linux/UnixLearn more →
networking

vpnc

Client for Cisco VPN concentrator

vpnc [options] [config file]
Linux/UnixLearn more →
system information

w

Show who is logged on and what they are doing

w [options] [user]
Linux/UnixLearn more →
shell builtin

wait

Wait for process completion and return exit status

wait [options] [id...]
Linux/UnixLearn more →
monitoring

watch

Execute a program periodically, showing output fullscreen

watch [options] command
Linux/UnixLearn more →
text processing

wc

Print newline, word, and byte counts for files

wc [OPTION]... [FILE]...
Linux/UnixLearn more →
networking

wget

The <code>wget</code> command is a non-interactive network downloader that retrieves files from the web. It supports HTTP, HTTPS, and FTP protocols, as well as retrieval through HTTP proxies. Unlike interactive browsers, wget can work in the background, after users log off, retrieving files recursively and creating local versions of remote sites.

wget [options] [URL...]
Linux/Unix/WindowsLearn more →
system management

whatis

The <code>whatis</code> command displays brief manual page descriptions. It searches the manual page names and displays a brief description from the manual page header. This is particularly useful for quickly finding out what a command does without reading the full manual page.

whatis [OPTION]... KEYWORD...
file searching

whereis

Locate the binary, source, and manual page files for a command

whereis [options] name...
Linux/UnixLearn more →
system management

which

The <code>which</code> command locates the executable file associated with a given command by searching the directories listed in the PATH environment variable. It helps determine which version of a program will be executed when you type a command in the terminal.

which [OPTION]... COMMAND...
system informationPopular

who

Show who is logged on the system

who [OPTION]... [FILE | ARG1 ARG2]
Linux/UnixLearn more →
user management

whoami

Print effective username

whoami [OPTION]...
Linux/UnixLearn more →
communication

write

Send a message to another user

write user [ttyname]
Linux/UnixLearn more →
shell utilities

xargs

Build and execute command lines from standard input

xargs [options] [command [initial-arguments]]
Linux/UnixLearn more →
x11 utilitiesPopular

xclip

Command line interface to X clipboard selections

xclip [options]
Linux/UnixLearn more →
desktop utilities

xdg-open

Open a file or URL with the default application

xdg-open {file|URL}
Linux/UnixLearn more →
filesystem

xfs

XFS filesystem utilities and commands

xfs tools are a suite of commands: xfs_admin, xfs_repair, xfs_db, etc.
Linux/UnixLearn more →
filesystem

xfs_check

Check XFS filesystem consistency (deprecated in favor of xfs_repair)

xfs_check [-f] [-i ino]... [-b bno]... special
Linux/UnixLearn more →
filesystem

xfs_repair

Repair an XFS filesystem

xfs_repair [-nfdPLvVm] [-o options] [-l logdev] [-r rtdev] [-t interval] device
Linux/UnixLearn more →
system

xinput

A utility to configure and test X input devices

xinput [options] [command] [device]
Linux/UnixLearn more →
system

xkill

Force close unresponsive X clients by killing their associated windows

xkill [-button number] [-frame] [-id resource] [-all] [-display displayname]
Linux/UnixLearn more →
system

xrandr

Command line interface to X RandR extension for screen resolution and display configuration

xrandr [options] [--output output] [output-options]
Linux/UnixLearn more →
system

xscreensaver

Extensible screen saver and locker for the X Window System

xscreensaver [options]
Linux/UnixLearn more →
system

xset

User preference utility for X Window System

xset [options]
Linux/UnixLearn more →
shell

yes

Output a string repeatedly until killed

yes [STRING]...
yes [OPTION]
Linux/UnixLearn more →
networking

ypbind

NIS (Network Information Service) client process that binds to an NIS server

ypbind [options]
Linux/UnixLearn more →
networking

ypcat

Print the values of all keys in an NIS (Network Information Service) database

ypcat [options] mapname
Linux/UnixLearn more →
networking

ypmatch

Print the values of one or more keys from an NIS (Network Information Service) map

ypmatch [options] key... mapname
Linux/UnixLearn more →
user managementPopular

yppasswd

Change your network password in the NIS (Network Information Service) database

yppasswd [user]
Linux/UnixLearn more →
networking

ypwhich

Return hostname of NIS server or map master

ypwhich [options] [host]
ypwhich [-m [mapname]]
Linux/UnixLearn more →
package management

yum

Package manager for RPM-based Linux distributions

yum [options] command [package...]
Linux/UnixLearn more →
file management

zcat

Display the contents of compressed files without explicitly decompressing them

zcat [options] [file...]
Linux/UnixLearn more →
file managementPopular

zdiff

Compare compressed files

zdiff [options] file1 file2
zcmp [options] file1 file2
Linux/UnixLearn more →
file managementPopular

zegrep

Search compressed files for extended regular expressions

zegrep [options] pattern [file...]
Linux/UnixLearn more →
file management

zfgrep

Search compressed files for fixed strings

zfgrep [options] pattern [file...]
Linux/UnixLearn more →
file management

zforce

Force a .gz extension on gzip compressed files

zforce [file...]
Linux/UnixLearn more →
file managementPopular

zgrep

Search compressed files for a regular expression

zgrep [options] pattern [file...]
Linux/UnixLearn more →
file_compression

zip

Package and compress (archive) files

zip [options] zipfile files...
file_compression

zless

View compressed files with the less pager

zless [options] file...
file_compression

zmore

View compressed files with the more pager

zmore [file...]
file_compression

znew

Recompress .Z files to .gz format

znew [options] [file.Z...]
shell

zsh

Z Shell - an extended Bourne shell with numerous improvements and additional features

zsh [options] [file [arguments...]]

Master Linux Commands

Enhance your Linux skills by learning these essential commands. Perfect for beginners and experienced users alike.

Explore All Commands