Skip to content

Linux CLI Essentials

A comprehensive guide to working effectively on the Linux command line. These guides take you from "I can type commands" to understanding how the shell actually works and using it productively.

Each topic is covered in its own guide. Start anywhere - they're self-contained, but the order below follows a natural learning path.

Linux Essentials learning path showing guide progression from fundamentals through file operations, system administration, and scripting

Guides

1 Start Here
Shell Basics
Beginner 45 min

What the shell is, how it starts up, and how it processes your input. Covers shell types, configuration files, the PATH variable, variables, quoting rules, and shell expansions.

2
Streams and Redirection
Beginner 30 min

How programs communicate through STDIN, STDOUT, and STDERR. Covers redirection, here documents, file descriptor manipulation, pipelines, and process substitution.

3
Text Processing
Intermediate 45 min

The core toolkit for searching, transforming, and analyzing text. Covers grep, sed, awk, cut, sort, uniq, tr, wc, head, tail, and tee.

4
Regular Expressions
Intermediate 40 min

The pattern-matching language used across Linux tools. Covers metacharacters, character classes, quantifiers, backreferences, BRE vs ERE vs PCRE, lookahead/lookbehind, and practical patterns.

5
Finding Files
Beginner 25 min

Searching directory trees and operating on the results. Covers find (name, type, size, time, permission tests, logical operators, and actions) and xargs.

6
File Permissions
Beginner 30 min

The Linux permission model explained. Covers chmod (symbolic and octal modes), chown, chgrp, umask, and special permission bits (setuid, setgid, sticky bit).

7
Job Control
Intermediate 30 min

Managing processes from the terminal. Covers foreground/background processes, signals, kill/killall/pkill, nohup, disown, ps, top/htop, and terminal multiplexers.

8
Scripting Fundamentals
Intermediate 45 min

Writing reliable bash scripts. Covers exit codes, conditionals, loops, functions, and error handling with set -euo pipefail and trap.

9
Disk and Filesystem
Intermediate 30 min

Managing storage. Covers df, du, mount/umount, /etc/fstab, lsblk, partition management with fdisk/parted, mkfs, and fsck.

10
Package Management
Intermediate 35 min

Installing, updating, and removing software. Covers apt and dnf workflows, low-level tools (dpkg, rpm), repository management, universal formats, and version pinning.

11
System Services
Intermediate 35 min

Managing services with systemd. Covers systemctl, unit file anatomy, writing custom services, journalctl log filtering, targets, and systemd timers.

12
User and Group Management
Intermediate 35 min

Managing users, groups, and access control. Covers useradd/usermod/userdel, /etc/passwd and /etc/shadow, group management, the sudo system, PAM basics, and user auditing.

13
SSH Configuration
Advanced 45 min

Deep dive into SSH configuration and key management. Covers key generation, ssh-agent, ~/.ssh/config patterns, SSH certificates, sshd_config hardening, and port forwarding.

14
Log Management
Intermediate 30 min

Finding, filtering, and managing system logs. Covers /var/log/ structure, journalctl filtering, rsyslog configuration, logrotate setup, and structured log parsing.

15
Networking
Intermediate 35 min

Essential networking from the command line. Covers ping/traceroute/mtr, curl/wget, ssh, scp/rsync, ss/ip, dig/nslookup, and nc (netcat).

16
System Information
Beginner 25 min

Understanding what's running on a system. Covers uname, uptime, free, lscpu, lsof, vmstat, the /proc and /sys virtual filesystems, and dmesg.

17
Archiving and Compression
Beginner 20 min

Bundling and compressing files. Covers tar (with gzip, bzip2, and xz), standalone compression tools, zip/unzip, and guidance on when to use each format.

18
Best Practices
Intermediate 30 min

Conventions that prevent real bugs. Covers set -euo pipefail, quoting variables, [[ ]] vs [ ], $() vs backticks, mktemp, shellcheck, and a script template.

19
Cron and Scheduled Tasks
Intermediate 30 min

Automating recurring tasks. Covers cron daemon, crontab syntax, system crontab files, cron environment gotchas, anacron, and systemd timers as a modern alternative.

20
Firewall and Networking Security
Advanced 40 min

Protecting your system from unauthorized network access. Covers the Netfilter framework, iptables, nftables, ufw, firewalld, default-deny policies, and stateful inspection.

Comments