Basics
.bashrc, Aliases and Functions: Set Up Your Bash Shell Properly
Learn when Bash reads .bashrc, .bash_profile and .profile, write useful aliases, know when a function is the better choice, and reload changes safely.
Bash History Tricks: Search, Reuse and Never Lose a Command
Get more out of Bash history: bigger history, timestamps, Ctrl+R search, !n and ^old^new expansion, fc, and history shared across terminals.
Bash Keyboard Shortcuts: Move, Edit and Search the Command Line Faster
The Bash keyboard shortcuts worth learning: jump around a line, cut and paste words, search history with Ctrl+R, reuse arguments and edit long commands.
Environment Variables and PATH in Bash: export, env and Startup Files
What environment variables are, how export works, how to set a variable for one command, add a directory to PATH permanently and load a .env file safely.
Files
Linux File Permissions Explained: chmod, chown and umask
Linux file permissions explained: read ls -l output, use chmod in octal and symbolic form, chown and umask, and when to use 644, 755 or 600.
find Command Examples: Search Files by Name, Size, Date and More
Practical Linux find command examples: search by name, type, size, age and permissions, skip directories with -prune, and act on results with -exec and xargs.
tar, gzip and zip: Create and Extract Archives on Linux
How to create, list and extract tar.gz, tar.xz and zip archives, exclude files, extract to another folder and compress single files with gzip, xz and zstd.
Networking
SSH Tips: Keys, Config File, Port Forwarding, rsync and More
Practical SSH tips: ed25519 keys and ssh-copy-id, ~/.ssh/config shortcuts, port forwarding with -L, -R and -D, ProxyJump, scp vs rsync, and keepalives.
curl and wget Examples: Download Files, Test APIs and Debug HTTP
Practical curl and wget commands: download and resume files, follow redirects, send JSON and form data, add headers and auth, time requests and mirror pages.
Prompt
Scripting
Bash Arrays and String Manipulation: A Practical Guide
Indexed and associative arrays in Bash, plus string length, substrings, trimming, search and replace and case changes with parameter expansion.
Bash Loops: for, while and until with Practical Examples
How to write Bash for, while and until loops: ranges, C-style loops, looping over files safely, reading files line by line, and common mistakes.
Bash Scripting Basics: Your First Useful Shell Script
Learn Bash scripting from scratch: shebang, variables and quoting, $1 and "$@", if and case, exit codes, set -euo pipefail and reading input.
System
Check Disk Usage on Linux: df, du and ncdu Explained
Find out what is filling your disk: df for free space and inodes, du for folder sizes, ncdu for interactive browsing, plus logs, journals and deleted open files.
Cron and Crontab Syntax: Schedule Jobs on Linux with Examples
How cron works, the five time fields explained with examples, crontab -e and -l, logging output, the PATH and % pitfalls, and preventing overlapping jobs.
Linux Process Management: ps, kill, jobs, nohup and systemctl
Find and control Linux processes: ps and pgrep, top, kill signals, background jobs, nohup and disown, nice, and systemd services.
Text processing
Pipes, Redirection and xargs in Bash: A Practical Guide
How pipes and redirection work in Bash: > >> 2> 2>&1 &> < <<< and here-docs, tee, process substitution, and turning input into arguments with xargs.
grep, sed and awk Basics: A Practical Introduction with Examples
A practical intro to grep, sed and awk: search text with grep, find and replace with sed (GNU and macOS), and pull out columns and totals with awk.