Putting it all together
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 a tiny project folder for an imaginary side project — a recipe website. The end state will look like this:
recipes-site/
├── README.md
├── src/
│ ├── pages/
│ │ ├── home.html
│ │ └── about.html
│ └── styles/
│ └── main.css
├── images/
│ └── placeholder.txt
└── archive/
└── old-readme.md
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 recipes-site/src/pages
mkdir -p recipes-site/src/styles
mkdir -p recipes-site/images
mkdir -p recipes-site/archive
Step inside and check:
cd recipes-site
ls
You should see three folders: archive, images, src. (The src contains pages and
styles — ls src to confirm.)
Step 3 — create the files
touch README.md
touch src/pages/home.html src/pages/about.html
touch src/styles/main.css
touch images/placeholder.txt
Five new empty files in one screenful. Run ls and ls src/pages to check.
Step 4 — put real content in the README
echo "# Recipes Site" > README.md
echo "" >> README.md
echo "A small website for sharing recipes." >> 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 images/ should really be called assets/:
mv images assets
ls
images is gone; assets is there. The file inside (placeholder.txt) 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/recipes-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. (Yes, including the project. That’s the point — you built it from typing, 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.)
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.