Programming · course 17 of 105
At Home in the Command Line
Use the terminal for real, from moving around and managing files to pipes with grep and sort and small Bash scripts, every answer checked by running the commands.
Not on sale yet. When sales open: $4.99 for this course, paid once, or every course for $9.99 a month. Prices
Preview
What it teaches
The terminal you actually use, with no guessing: moving around (pwd, cd, .., ~), files and folders (ls, mkdir -p, mv, cp -r, rm, * and ?), text and pipes (>, >>, 2>&1, |, grep, wc, head, tail, sort, uniq, cut), and small scripts (variables, quotes, $( ), exit status, && and ||, if, for, $1, chmod +x, PATH, export). The AI asks 3 questions, places you, shows a short card per module, then gives you one item at a time: you say what the shell will print or do after some commands, or type the command for a job, and it checks you against an answer key: everything about what the shell prints or does came from running the commands for real.
How long
62 items. About 45 rounds if you rarely miss, about 95 if you miss one in four, plus a 12-item final: 3-4 sessions (estimate, not timed with a real student). The tutor gives a one-line save code at the end of each session.
The modules
4 modules, drilled one item at a time.
- M0
The words
Concept questions
- M1
Files and folders
Say what the shell prints or does, or type the command
- M2
Text, redirects and pipes
Say what a redirect or pipe prints, or type the command
- M3
Variables, exit status and scripts
Say what a script or variable prints, or type the command
Before it teaches, it asks
- 1What computer do you use (Mac, Linux, Windows), and have you typed commands in a terminal before? Which ones?
- 2Your home folder is /home/sam and has a folder projects with a folder site inside (and a folder docs). You start at home. What does the last command print?$ cd projects/site$ cd ..$ pwd
- 3fruit.txt has 6 lines: apple · apple · banana · apple · cherry · banana. What does the last command print?$ sort fruit.txt | uniq -c
What’s exact, and what isn’t
Show
Straight from the course’s own notes.
- Produced by running the commands
- Every key came from running the item’s exact commands in a fresh scratch folder in bash 3.2.57, again in a UTF-8 locale, and in dash (every item but one marked “bash only”); all runs agree. zsh (the Mac default) gives the same key on every item too. Every accepted answer to a type-the-command question was run and does the job in bash, dash and zsh; every listed wrong command was run and doesn’t. 25 of the 42 listed wrong answers were also produced by running the mistake. A planted-error test (6 errors) was caught.
- Sourced
- Definitions and rules from the GNU Bash manual, the POSIX standard’s utility pages and Ubuntu’s command-line tutorial; short quotes matched word for word on the pages on 2026-10-10.
- Honest limits
- The tutor can’t run commands or see your screen. Keys come from a Mac (BSD tools); a test run re-ran every answer, wrong answer and command on Debian 12 (GNU coreutils 9.1, bash 5.2, dash) and Alpine Linux (busybox 1.35, bash 5.1) and got the same lines (error messages and wc spacing differ). Every option used is in the POSIX standard except cp -r (POSIX.1-2024 lists only cp -R; every system tested accepts both) and the head -5 shortcut. Windows Command Prompt and PowerShell are not covered (use WSL or Git Bash).
- CSV files from Excel
- Cut -d , splits at every comma, including commas inside quotes; Windows line endings leave an invisible character at the end of the last column; wc -l does not count a last line that has no newline at the end; skipping a header line and sorting by a column are not covered.
- Not in it yet
- Sed, awk, find, xargs, regular expressions, permissions beyond chmod +x, sudo, processes, ssh, functions, while and case.