Terminal
Why does the terminal exist?
When you use a computer normally, you click things. Open a file. Drag it to a folder. Right-click and rename it. That works fine for everyday tasks.
But clicking has limits. You can only do what someone built a button for. And some tasks — like "rename 400 files using this pattern" or "search for a word inside every file in this folder" — would take hours by clicking, but take one line in the terminal.
The terminal lets you skip the buttons and talk directly to your computer.
Instead of clicking File > New Folder, you type mkdir projects. Instead of opening every CSV to find the one that mentions a customer, you type grep "CustomerName" *.csv and get results across every file instantly.
For data work specifically, this matters a lot. Every serious tool you will use — dbt, Python, Git — runs from the terminal. You cannot get far without it.
What You'll Learn
- Navigating the filesystem (
pwd,ls,cd) - Creating, copying, moving, and deleting files
- Reading file contents without opening a text editor
How This Works
Each lesson explains a command or concept, then drops you into an interactive terminal playground at the bottom of the page. The playground runs a real shell (in your browser — no server required) against a pre-built filesystem.
Your goal for each lesson appears in the left panel. When the sandbox detects that you have completed it, the lesson is marked done and the next one unlocks.
Lessons
Orientation
| Lesson | Command | Goal |
|---|---|---|
| Getting a Terminal | — | Install a terminal on macOS or Windows |
| Introduction to Terminal | — | What the terminal is and how the playground works |
| pwd | pwd | See where you are |
| ls | ls | List directory contents |
| ls -l and -a | ls -l, ls -a | Flags and hidden files |
| cd | cd | Navigate into a directory |
| cd .., ~, - | cd .., cd ~, cd - | Navigate back up the tree |
| Putting it together | Combined | Find a deeply nested file |
Files & Directories
| Lesson | Command | Goal |
|---|---|---|
| touch | touch | Create a file |
| mkdir | mkdir | Create a directory |
| mkdir -p | mkdir -p | Create a deep path in one step |
| cp | cp | Duplicate a file |
| mv | mv | Move or rename |
| rm | rm | Remove a file |
| rm -r | rm -r | Recursive deletion |
Reading Files
| Lesson | Command | Goal |
|---|---|---|
| cat | cat | Print a file |
| head | head | First N lines |
| tail | tail | Last N lines |
| wc | wc | Count lines, words, chars |
No prior terminal experience required. If you are on Windows, install Git Bash to follow along on your own machine. On macOS and Linux, open your terminal app and you are ready.