Linux terminal commands every developer should know

Linux terminal commands every developer should know — Informatics Hub
Terminal command line interface on dark screen
Tech Guides · Infrastructure

Linux terminal commands every developer should know

Informatics HubJune 20257 min read

The terminal looks intimidating until you realize you only need about 20 commands for 90% of what you'll ever do. Here are the ones that actually matter — with clear explanations of what each one does and when to use it.

Whether you're setting up a server, managing files on a VPS, running automation scripts, or working with Docker — you will use the Linux terminal. There's no way around it in modern development. The good news is the learning curve is much shorter than it looks.

Every senior developer you've ever admired spends most of their time in a terminal. Not because it's cool — because it's faster, more precise, and more powerful than any GUI for the things they're doing.
Developer typing commands in a terminal

Once you're comfortable in the terminal, you'll find it faster than any graphical interface

Navigation & file management

pwd
Print Working Directory — shows you exactly where you are in the file system right now
ls -la
List files — shows all files and folders in the current directory, including hidden ones and their permissions
cd folder
Change Directory — move into a folder. Use cd .. to go up one level, cd ~ to go home
mkdir name
Make Directory — creates a new folder. Use mkdir -p a/b/c to create nested folders at once
rm -rf name
Remove — deletes a file or folder permanently. The -rf flag means recursive and force — use with care, there's no undo
cp / mv
Copy / Movecp file destination copies it, mv file destination moves (or renames) it

Reading & editing files

cat file
Print file contents — dumps the entire file to the terminal. Good for short files and config inspection
nano file
Edit a file — opens a simple text editor in the terminal. Save with Ctrl+O, exit with Ctrl+X
grep "text"
Search inside files — finds lines containing your search term. Use grep -r "text" . to search all files in a folder
tail -f file
Watch a file live — shows the last lines of a file and updates in real time. Essential for watching server logs

System & processes

top / htop
System monitor — shows running processes and resource usage. htop is the nicer version (install it first)
ps aux
List processes — shows every running process with its ID. Pipe to grep to find something specific: ps aux | grep node
kill PID
Stop a process — terminates a process by its ID. Use kill -9 PID to force-kill something that won't stop
df -h
Disk usage — shows how much storage space is used and available on each mounted drive

Network & downloads

curl URL
Make HTTP requests — send GET, POST, or any HTTP request from the terminal. Essential for testing APIs
wget URL
Download files — downloads a file from the internet directly to your current directory
ssh user@host
Connect to a remote server — opens a secure shell session to any Linux server you have access to
scp file host
Secure copy — transfers files between your machine and a remote server over SSH
Pro tip

Use the up arrow key to cycle through your command history — you'll never retype a long command again. And Ctrl+R lets you search through everything you've previously typed. These two shortcuts alone save significant time every day.

Key takeaways

  • You only need about 20 commands for 90% of real development work
  • Navigation, file management, and process control are the three core skill areas
  • curl is your best friend for testing APIs directly from the terminal
  • The up arrow and Ctrl+R are the most underrated terminal shortcuts

Comments