Guide contents

Essential Commands for Developers

The command-line tools developers use every day, with many real examples: files, pipes, variables, find, grep, sed, awk, xargs, jq, processes, permissions, curl, ports, SSH, rsync, git, archives, tmux, shell scripts, and the JDK tools.

14 lessons in 6 sections

Start with Navigating and Managing Files →

Shell Basics

Files and directories, pipes and redirection, exit codes, variables, quoting, and the environment.

  1. 1.Navigating and Managing Files
  2. 2.Pipes, Redirection, and Exit Codes
  3. 3.Variables, Quoting, and the Environment

Finding and Processing Text

find, grep, ripgrep, sort, uniq, cut, sed, awk, xargs, and jq.

  1. 4.Finding Files and Searching Text
  2. 5.Viewing, Sorting, and Counting Text
  3. 6.sed and awk
  4. 7.xargs and jq

Processes and the System

Processes, jobs, signals, disk and memory usage, users, and permissions.

  1. 8.Processes, Jobs, and Signals
  2. 9.Disk, Memory, Users, and Permissions

Networking

curl, ports, DNS, SSH, scp, and rsync.

  1. 10.HTTP, Ports, and DNS
  2. 11.SSH, scp, and rsync

Developer Tools

Git with recovery commands, archives, tmux, and shell scripts.

  1. 12.Git Essentials and Recovery
  2. 13.Archives, tmux, and Shell Scripts

JDK Command-Line Tools

java, javac, jar, jshell, jps, jcmd, jstack, jmap, jstat, and jfr.

  1. 14.JDK Command-Line Tools