As a fullstack developer, Linux is my daily playground. Whether I'm building backend APIs, deploying to a server, or debugging issues in production, the terminal is always open. Here's a list of commands I use all the time — plus tips that helped me learn Linux faster.
🧠 Must-Know Linux Commands
cd, ls, pwd
These are your bread and butter. I use them constantly to move around the filesystem and see where I am.
bash cd ~/projects/my-app ls -al pwd 💡 Tip: Add aliases to your .bashrc or .zshrc for commonly accessed paths.
grep, find, cat, less
Searching through logs or code? These commands save the day.
bash grep "error" logs.txt find . -name "*.js" cat index.js | less 💡 Tip: Use grep -r "keyword" . to recursively search inside a folder.
touch, mkdir, rm, mv, cp
For file and folder management. Super useful when creating new files or organizing stuff.
bash touch test.js mkdir new-folder rm -rf node_modules/ mv index.html public/ cp .env.example .env ⚠️ Be careful with rm -rf. Double-check before pressing Enter!
curl, wget
Great for testing APIs or downloading stuff directly from a URL.
bash curl http://localhost:3000/api/status wget https://someurl.com/file.zip 💡 Tip: Use curl -I to see only the response headers.
chmod, chown
Useful for setting permissions when something’s not working right.
bash chmod +x deploy.sh sudo chown -R $USER:$USER ./my-project 💡 Tip: chmod +x makes a script executable.
top, htop, ps, kill
For checking what’s eating up your CPU or killing processes.
bash top ps aux | grep node kill -9 PID
docker, docker-compose
If you're running services locally, Docker is essential (a lit nightmare at first tho but let's make it simple).
bash docker-compose up -d docker ps docker logs -f container_name 💡 Tip: Use .env files with Docker Compose to make configs cleaner.

