You’ve learned eight commands across the last nine lessons. They are, in order:
| You ask | You type |
|---|---|
| Where am I? | pwd |
| What’s here? | ls, ls -la |
| Step into a folder | cd <folder> |
| Step out / go home | cd .., cd ~, cd - |
| Make a folder | mkdir, mkdir -p |
| Make a file | touch, echo > file |
| Copy | cp, cp -r |
| Move or rename | mv |
| Delete | rm, rm -r |
That’s the whole Level 1 toolkit. Now we use it all in one sitting. Open your terminal and follow along — every command. No watching, no skimming. You’ll feel the muscle memory click into place by the end.
The mission
Build the folder for your own personal website — my-site. It’s the project the rest of
the course works on, so you’re not scaffolding a throwaway: you’re laying the first stones of
the thing you’ll keep growing. The end state will look like this:
my-site/
├── README.md
├── pages/
│ ├── index.html
│ └── about.html
├── styles/
│ └── main.css
├── server/
│ └── placeholder.txt
└── archive/
└── old-readme.md
A couple of HTML pages, a stylesheet, and a server/ folder for the tiny backend you’ll meet
later. You’ll build this from nothing using only the commands you already know. Then you’ll
reorganize it, copy parts of it, and clean some of it up.
Step 1 — start fresh
Go home, make a workspace, and step inside:
cd ~
mkdir terminal-practice
cd terminal-practice
pwd
The pwd should show your terminal-practice folder. If anything looks wrong, just cd ~
and start over — you can’t get lost.
Step 2 — scaffold the project tree in one shot
Remember mkdir -p? It can build the whole tree for you:
mkdir -p my-site/pages
mkdir -p my-site/styles
mkdir -p my-site/server
mkdir -p my-site/archive
Step inside and check:
cd my-site
ls
You should see four folders: archive, pages, server, styles. (The pages folder will
hold your HTML — ls pages to confirm it’s empty for now.)
Step 3 — create the files
touch README.md
touch pages/index.html pages/about.html
touch styles/main.css
touch server/placeholder.txt
Five new empty files in one screenful. Run ls and ls pages to check.
Step 4 — put real content in the README
echo "# My Site" > README.md
echo "" >> README.md
echo "My personal website — plain HTML and CSS." >> README.md
Notice the single > on the first line (creates/overwrites) and double >> on the
others (append). Confirm:
cat README.md
You should see three lines.
Step 5 — make a backup before changing anything
Good habit: copy the README before editing it heavily.
cp README.md archive/old-readme.md
ls archive
old-readme.md is there. The original README.md is untouched.
Step 6 — change your mind, rename a folder
You decide styles/ should really be called css/:
mv styles css
ls
styles is gone; css is there. The file inside (main.css) came along for the
ride.
Step 7 — clean up
The archive/ folder turned out to be unnecessary. Delete it. Since it has a file inside,
plain rm archive won’t work — you need -r:
ls archive
rm -r archive
ls
Notice the ls archive before — that’s the “look before you delete” habit. The ls after
confirms the folder is gone.
Step 8 — admire your work
cd ~/terminal-practice/my-site
ls -la
You scaffolded a real-looking project folder from absolutely nothing, using only commands you’ve learned in the last 30 minutes.
Bonus: nuke the whole thing
When you’re done, leave no trace:
cd ~
rm -r terminal-practice
Gone — practice workspace and all. That’s the point: you built my-site from typing, so you
can rebuild it any time. Files made by hand cost the same as files made by clicking, except now
you have a recipe to do it again in five seconds. (Don’t worry — in Level 2 you’ll open a
ready-made my-site and meet the tool that builds the rest of it with you.)
What just happened
You used:
pwd,ls— to know where you were and what was around.cd,mkdir -p— to build and navigate the structure.touch,echo >,echo >>— to create and write to files.cp,mv,rm -r— to copy, reorganize, and clean up.
That is the entire daily toolkit of every developer on Earth. Everything else — pipes, grep, git, ssh, package managers — sits on top of these few moves. You’ve got the foundation.
Where to next
Level 2 picks up where this leaves off: you can make files, but you haven’t really read
them yet (besides one cat in this lesson). Next up:
cat,head,tail,less— read files of any size.grep— search inside files for a word.find— search the filesystem for a file by name.
Reading and searching is the half of the terminal where it stops feeling like “typing instead of clicking” and starts feeling like a superpower.
When you’re ready: take a break, then start Level 2.
Try a smaller version here
The practice terminal below is a tiny sandbox. Try pwd and ls to confirm you’ve got the
muscle memory. Earn your final XP and call Level 1 done.