Skip to content

Linux diff Guide

Mattscreative edited this page Dec 5, 2025 · 2 revisions

Linux diff Guide

Complete beginner-friendly guide to diff on Linux, covering Arch Linux, CachyOS, and other distributions including comparing files, finding differences, and generating patches.


Table of Contents

  1. Understanding diff
  2. diff Basics
  3. Comparing Files
  4. Comparing Directories
  5. Generating Patches
  6. Troubleshooting

Understanding diff

What is diff?

diff compares files and shows differences.

Uses:

  • Compare files: Find differences between files
  • Generate patches: Create patch files
  • Version control: See what changed
  • Code review: Review changes

Why it matters:

  • File comparison: Compare file versions
  • Change tracking: See what changed
  • Patch creation: Create patches for updates

diff Basics

Compare Files

Basic usage:

# Compare two files
diff file1.txt file2.txt

# Shows differences

Unified Format

Unified output:

# Unified format
diff -u file1.txt file2.txt

# -u = unified (easier to read)

Comparing Files

Context Lines

Add context:

# Context lines
diff -c file1.txt file2.txt

# Shows surrounding lines

Ignore Case

Case insensitive:

# Ignore case
diff -i file1.txt file2.txt

# -i = ignore case

Comparing Directories

Compare Directories

Directory comparison:

# Compare directories
diff -r dir1/ dir2/

# -r = recursive

Brief Output

Summary only:

# Brief summary
diff -rq dir1/ dir2/

# -q = quiet (only names)

Generating Patches

Create Patch

Generate patch:

# Create patch file
diff -u old.txt new.txt > patch.diff

# Unified patch format

Apply Patch

Apply patch:

# Apply patch
patch file.txt < patch.diff

# Updates file

Troubleshooting

diff Not Found

Check installation:

# Check diff
which diff

# Usually in diffutils
# Install if missing
sudo pacman -S diffutils

Summary

This guide covered diff usage, file comparison, and patch generation for Arch Linux, CachyOS, and other distributions.


Next Steps


This guide covers Arch Linux, CachyOS, and other Linux distributions. For distribution-specific details, refer to your distribution's documentation.

Clone this wiki locally