Linux Commands : Mostly Usage, Tips, and Examples

This guide covers the most commonly used Linux commands along with their usage, tips, and examples. Whether you're a beginner or an experienced user, these commands are essential for navigating and managing a Linux system.


1. Navigation and File Management Commands

1.1 ls - List Directory Contents

The ls command lists the contents of a directory.

Usage:

ls [options] [directory]

Common Options:

  • -l: Long listing format.
  • -a: Include hidden files (those starting with .).
  • -h: Human-readable file sizes.

Examples:

# List files in the current directory
ls

# Long format list including hidden files
ls -alh

# List files in a specific directory
ls /var/log

1.2 cd - Change Directory

The cd command changes the current working directory.

Usage:

cd [directory]

Examples:

# Go to the home directory
cd ~

# Go up one directory level
cd ..

# Change to the /etc directory
cd /etc

1.3 pwd - Print Working Directory

The pwd command displays the current working directory.

Usage:

pwd

Example:

# Display the current directory path
pwd

1.4 mkdir - Make Directory

The mkdir command creates a new directory.

Usage:

mkdir [options] directory_name

Common Options:

  • -p: Create parent directories as needed.

Examples:

# Create a directory named 'projects'
mkdir projects

# Create nested directories 'projects/java'
mkdir -p projects/java

1.5 rm - Remove Files or Directories

The rm command removes files or directories.

Usage:

rm [options] file_or_directory

Common Options:

  • -r: Recursively remove directories and their contents.
  • -f: Force removal without prompt.

Examples:

# Remove a file
rm example.txt

# Remove a directory and its contents
rm -r old_projects

# Force remove without confirmation
rm -rf temp_files

1.6 cp - Copy Files or Directories

The cp command copies files or directories.

Usage:

cp [options] source destination

Common Options:

  • -r: Recursively copy directories.
  • -i: Prompt before overwrite.

Examples:

# Copy a file
cp file1.txt file2.txt

# Copy a directory recursively
cp -r dir1 dir2

# Copy with confirmation before overwrite
cp -i file1.txt file2.txt

1.7 mv - Move or Rename Files and Directories

The mv command moves or renames files and directories.

Usage:

mv [options] source destination

Examples:

# Rename a file
mv oldname.txt newname.txt

# Move a file to another directory
mv file.txt /home/user/documents/

# Move multiple files to a directory
mv file1.txt file2.txt /home/user/documents/

2. File Viewing and Editing Commands

2.1 cat - Concatenate and Display Files

The cat command displays the contents of a file.

Usage:

cat [options] filename

Examples:

# Display the contents of a file
cat file.txt

# Display line numbers
cat -n file.txt

2.2 less - View File Contents One Page at a Time

The less command allows you to view file contents one page at a time.

Usage:

less filename

Example:

# View a large file
less bigfile.log

Tip: Use the arrow keys to navigate. Press q to quit.

2.3 head and tail - View Beginning or End of Files

The head command displays the first few lines of a file, while tail displays the last few lines.

Usage:

head [options] filename
tail [options] filename

Examples:

# Display the first 10 lines (default)
head file.txt

# Display the last 20 lines
tail -n 20 file.txt

# Monitor a file in real-time
tail -f /var/log/syslog

2.4 nano - Simple Text Editor

nano is a simple command-line text editor.

Usage:

nano filename

Example:

# Edit or create a file
nano notes.txt

Tip: Use Ctrl + X to exit, Ctrl + O to save.


3. System Information and Management Commands

3.1 sudo - Execute Commands as Root User

The sudo command allows permitted users to execute a command as the superuser.

Usage:

sudo command

Example:

# Update package lists (requires root privileges)
sudo apt update

3.2 apt / yum / dnf - Package Managers

These commands manage software packages on your system.

Usage:

# Debian/Ubuntu systems
sudo apt update
sudo apt install package_name

# CentOS/RHEL systems
sudo yum update
sudo yum install package_name

# Fedora/CentOS 8+
sudo dnf update
sudo dnf install package_name

3.3 top - Display Active Processes

The top command provides a dynamic real-time view of running processes.

Usage:

top

Tip: Press q to quit, h for help.

3.4 ps - Report Process Status

The ps command displays information about active processes.

Usage:

ps [options]

Examples:

# List processes for the current user
ps

# List all processes
ps aux

# Search for a specific process
ps aux | grep apache2

3.5 kill - Terminate Processes

The kill command sends a signal to a process.

Usage:

kill [signal] PID

Examples:

# List processes
ps aux

# Terminate a process with PID 1234
kill 1234

# Force kill a process
kill -9 1234

3.6 df - Report Disk Space Usage

The df command displays disk space usage of file systems.

Usage:

df [options]

Examples:

# Display disk usage in human-readable format
df -h

# Display disk usage of a specific file system
df -h /dev/sda1

3.7 du - Estimate File Space Usage

The du command estimates file space usage.

Usage:

du [options] [file_or_directory]

Examples:

# Display sizes of directories and files
du -h

# Display total size of a directory
du -sh /var/log

4. Permissions and Ownership Commands

4.1 chmod - Change File Permissions

The chmod command changes file access permissions.

Usage:

chmod [options] mode file

Examples:

# Give the owner read, write, and execute permissions
chmod u+rwx script.sh

# Set permissions using numeric notation
chmod 755 script.sh

# Recursively change permissions
chmod -R 644 /var/www/html

4.2 chown - Change File Owner and Group

The chown command changes the owner and group of a file or directory.

Usage:

chown [options] owner[:group] file

Examples:

# Change the owner of a file to 'user'
sudo chown user file.txt

# Change the owner and group
sudo chown user:group file.txt

# Recursively change ownership
sudo chown -R user:group /var/www/html

5. Networking Commands

5.1 ping - Test Network Connectivity

The ping command checks network connectivity between your system and another host.

Usage:

ping [options] destination

Examples:

# Ping a host
ping example.com

# Ping with a specific count
ping -c 4 google.com

5.2 ifconfig / ip - Configure Network Interfaces

The ifconfig command configures network interfaces (deprecated in favor of ip command).

Usage:

# Display network interfaces (ifconfig)
ifconfig

# Display network interfaces (ip)
ip addr show

5.3 ssh - Secure Shell

The ssh command allows you to connect to a remote machine securely.

Usage:

ssh [user@]hostname [command]

Examples:

# Connect to a remote server
ssh [email protected]

# Run a command on a remote server
ssh [email protected] 'ls -la'

5.4 scp - Secure Copy

The scp command copies files between hosts over a secure connection.

Usage:

scp [options] source destination

Examples:

# Copy a file to a remote server
scp file.txt [email protected]:/home/user/

# Copy a file from a remote server
scp [email protected]:/home/user/file.txt /local/directory/

5.5 wget - Download Files from the Web

The wget command downloads files from the web.

Usage:

wget [options] url

Examples:

# Download a file
wget http://example.com/file.zip

# Download in the background
wget -b http://example.com/file.zip

6. Search and Processing Commands

6.1 grep - Search Text Using Patterns

The grep command searches for patterns in files.

Usage:

grep [options] pattern [file]

Examples:

# Search for a string in a file
grep "error" logfile.log

# Search recursively in all files in a directory
grep -r "TODO" /path/to/code

# Ignore case sensitivity
grep -i "warning" logfile.log

6.2 find - Search for Files and Directories

The find command searches for files and directories based on criteria.

Usage:

find [path] [options] [expression]

Examples:

# Find files named 'notes.txt'
find / -name 'notes.txt'

# Find files larger than 100MB
find / -size +100M

# Execute a command on found files
find . -type f -name "*.tmp" -exec rm {} \;

6.3 awk - Pattern Scanning and Processing Language

The awk command processes text files and data streams.

Usage:

awk 'pattern { action }' file

Example:

# Print the second column of a file
awk '{ print $2 }' file.txt

# Sum numbers in the first column
awk '{ total += $1 } END { print total }' numbers.txt

6.4 sed - Stream Editor for Filtering and Transforming Text

The sed command is used for text manipulation.

Usage:

sed [options] 'command' file

Examples:

# Replace 'old' with 'new' in a file
sed 's/old/new/g' file.txt

# Delete lines containing 'error'
sed '/error/d' file.txt

7. Compression and Archiving Commands

7.1 tar - Archive Files

The tar command creates and extracts archive files.

Usage:

tar [options] archive_name.tar file_or_directory

Examples:

# Create a tar archive
tar -cvf archive.tar /path/to/directory

# Extract a tar archive
tar -xvf archive.tar

# Create a compressed tar.gz archive
tar -czvf archive.tar.gz /path/to/directory

# Extract a tar.gz archive
tar -xzvf archive.tar.gz

7.2 zip and unzip - Compress and Decompress ZIP Files

The zip command compresses files into a ZIP archive, and unzip extracts them.

Examples:

# Compress files into a ZIP archive
zip archive.zip file1.txt file2.txt

# Extract a ZIP archive
unzip archive.zip

8. User Management Commands

8.1 adduser / useradd - Create a New User

The adduser and useradd commands create new user accounts.

Examples:

# Create a new user with home directory
sudo adduser username

# Add a user without creating home directory
sudo useradd username

8.2 passwd - Change User Password

The passwd command changes a user's password.

Usage:

passwd [username]

Examples:

# Change your own password
passwd

# Change another user's password
sudo passwd username

8.3 who and w - Show Who Is Logged In

The who command displays users currently logged in, while w provides more details.

Examples:

# List logged-in users
who

# Detailed information about users
w

9. Miscellaneous Commands

9.1 history - Show Command History

The history command displays the list of commands you've previously entered.

Usage:

history

Example:

# Show command history
history

# Run a command from history
!55  # Executes command number 55

9.2 alias - Create Aliases for Commands

The alias command creates shortcuts for commands.

Usage:

alias name='command'

Examples:

# Create an alias for 'ls -al'
alias ll='ls -al'

# Make alias permanent (add to ~/.bashrc)
echo "alias ll='ls -al'" >> ~/.bashrc

9.3 clear - Clear the Terminal Screen

The clear command clears the terminal screen.

Usage:

clear

Example:

# Clear the screen
clear

Conclusion

This guide covered the most commonly used Linux commands essential for daily tasks. Mastering these commands will enhance your efficiency and proficiency in managing Linux systems.

Additional Resources

  • Linux Commands
  • 0 Uživatelům pomohlo
Byla tato odpověď nápomocná?

Související články

hTOP Command Installation On Linux Server

To install and use the htop command on YUM-based Linux distributions like CentOS and AlmaLinux,...

OpenVPN Installation on an Ubuntu-based Linux Server

This guide provides a simple method to install OpenVPN on Ubuntu using an automated script. The...

DirectAdmin Control Panel Installation Guideline Linux Server

DirectAdmin is a powerful and user-friendly web hosting control panel. This guide will walk you...

CyberPanel Installation on Linux Server

CyberPanel is a next-generation web hosting control panel powered by OpenLiteSpeed. It offers a...

cPanel Installation on Linux

cPanel & WHM is a leading web hosting control panel that provides a graphical interface and...