Loading…
TechNest
Terminal navigation
Explore and get curious
2 steps
Try things, experiment
2 steps
Go deep, master it
2 steps
Explore & Discover
The command line is the text interface that lets you control a computer by typing instead of clicking. Programmers, hackers, and system administrators use it every day — it's faster than any mouse once you know it. Before touching a terminal, explore what it looks like: visit the free interactive tutorial at linuxcommand.org and read the "Learning the Shell" section introduction. Then watch "The Linux Command Line in 100 Seconds" on Fireship's YouTube channel. If you're on a Mac, your computer already has a terminal — search "Terminal" in Spotlight. On Windows, search "Windows Terminal" or "PowerShell." Open it. Just look at the prompt blinking. You haven't broken anything yet. You're ready for the next step when you can open a terminal on your computer and explain in one sentence what a "command prompt" is.
Learn the Basics
Learn the five commands you'll use every single day. In your terminal, type each of these and press Enter: (1) pwd — prints your current location, (2) ls — lists files and folders here, (3) cd Documents — moves into the Documents folder, (4) cd .. — goes back up one level, (5) clear — clears the screen. Practice navigating to three different folders using only cd and ls — no clicking allowed. Notice how the file system is like a tree: the root is at the top, branches are folders, leaves are files. Visit the free interactive shell at overthewire.org/wargames/bandit (level 0) to practice in a safe sandbox. Read the hints carefully. You're ready for the next step when you can navigate to any folder on your computer using only terminal commands.
Build Your First Project
Now create, copy, move, and delete files without touching your mouse. In your terminal, practice these commands: mkdir myfolder (creates a folder), touch notes.txt (creates an empty file), echo "hello" > notes.txt (writes text into the file), cat notes.txt (reads the file), cp notes.txt backup.txt (copies it), mv backup.txt myfolder/ (moves it), rm notes.txt (deletes it). Do each command, then use ls to confirm it worked. Never use rm on anything you actually care about yet — practice only on files you created in this session. The free Codecademy command line course at codecademy.com/learn/learn-the-command-line covers all of these with interactive exercises. You're ready for the next step when you can create, read, copy, move, and delete a file using only the terminal.
Experiment & Iterate
Redirection and pipes make the terminal incredibly powerful. Try these: ls > filelist.txt (saves ls output to a file instead of the screen), cat filelist.txt | grep "notes" (searches the file for the word "notes"), echo "new line" >> notes.txt (appends text without erasing what's already there). The pipe character | is the superpower: it takes the output of one command and feeds it as input to the next. Create a folder with 10 text files, then use ls | grep to find only the ones with "test" in the name. Read about pipes in the Bash guide at tldp.org/LDP/Bash-Beginners-Guide/html. You're ready for the next step when you can use a pipe to chain two commands together and describe what each one is doing.
Advanced Techniques
Write your first shell script — a text file full of terminal commands that runs all at once. Open a terminal, create a file called hello.sh, and write three lines: #!/bin/bash on line 1, echo "Hello from the terminal!" on line 2, and date on line 3. Save it, then run chmod +x hello.sh to make it executable, and run it with ./hello.sh. You just automated something. Now write a more useful script: one that creates a dated backup folder, copies a specific file into it, and prints "Backup complete!" with today's date. Scripts like this save system administrators hours every week. The free bash scripting tutorial at tldp.org/LDP/Bash-Beginners-Guide/html/sect_02_01.html helps you go deeper. You're ready for the next step when your backup script runs without errors and creates a correctly dated folder.
Final Project Showcase
Build a command-line tool that actually solves a problem in your life. Ideas: a script that organizes your Downloads folder by file type, a quiz game that runs in the terminal, or a script that displays your class schedule and a motivational message each morning. Write at least 20 lines of bash. Use variables, if/else conditions, and a loop. Test your script five times with different inputs. Share your script on GitHub — create a free account at github.com, start a new repository, upload your .sh file, and write a README that explains what it does and how to run it. Your first GitHub project is a milestone every developer remembers. You're ready for the next step when your tool is publicly visible on GitHub and someone else can follow your README to run it successfully.
Recommended materials and resources for this quest.
The Linux Command Line (William Shotts)
RequiredFree in full at linuxcommand.org/tlcl.php — the definitive beginner book on bash, readable and practical throughout
amazon
Free online or ~$30 print
Sticky Note Pack (for command cheat sheets)
RequiredWrite your most-used terminal commands on sticky notes and stick them next to your screen — physical reference beats googling every time
amazon
$4–$8
Raspberry Pi 4 Starter Kit
Run a real Linux terminal on your own hardware — the best way to practice without worrying about breaking your main computer
amazon
$60–$90
Some links may be affiliate links. We may earn a small commission at no extra cost to you.