When I started using Linux, I memorized several commands and used them so often that they became muscle memory. But several years down the line, I don’t reach for most of those commands as often as I used to. The old commands are still fine, but the way I use Linux has evolved. Looking back at these first commands, I’m surprised at how many disappeared from my daily routine. I’m curious to know if this is a similar path for most people who use Linux.
I left ifconfig behind
Linux taught me a networking command that I eventually outgrew
I felt I was finally getting somewhere with Linux after mastering ifconfig. Running it reveals my network interfaces, their addresses, and statistics such as received and transmitted packets.
I don’t think I ever made a deliberate effort to stop using it. Somehow, the command fell out of my routine, and the ip command became the one I use to inspect interfaces, addresses, and routes.
ifconfig was part of the older net-tools collection, and modern Linux distributions generally use the ip tools from iproute2 instead. You may still have ifconfig on systems with older tools installed, but it’s not something I need to keep in my head.
Interestingly, that’s one of the first things I got wrong when I started learning Linux. I assumed that the commands I’d memorized would be a permanent part of my vocabulary. A few of them, like ifconfig, ended up being stepping stones.
netstat disappeared even faster
I still need the information, just not the command
I learned netstat because I needed it to solve a very specific problem. It helped me reveal what a service running on my computer was doing with the network.
If I run a command like netstat -tulpn, I see listening services along with the ports they are attached to. It became my go-to command whenever I needed to know why a specific service wasn’t reachable.
Now I barely reach out for it, and unlike ifconfig, there is a concrete reason. Its own manual now describes it as mostly obsolete and points toward ss as the replacement. Now I’m much more likely to run ss -tulpn to see what’s listening. What changed for me wasn’t the information I needed, but the commands I used to get it. ss covers sockets and connections, while ip route handles routing.
|
What I want to know |
Old habit |
What I use now |
|---|---|---|
|
What is listening? |
netstat |
ss |
|
What connections exist? |
netstat |
ss |
|
What are the routes? |
netstat -r |
ip route |
I still come across old Linux tutorials that point to netstat. While the command itself is old, the problems are still very much around. So, rather than disregard the tutorial, I adapt the instructions to the toolset I actually use.
man taught me to stop guessing
Then I realized I rarely needed the whole manual
Linux taught me to look up a command when I don’t know how it works, rather than guess. This, for a very long time, meant using man, the system’s built-in reference manual page.
I often already know which command I want to use, but I’m not sure of the exact syntax or options. Opening an entire manual page for this is overkill. Now, I use tldr more.
It’s a project deliberately focusing on practical examples. It keeps the pages short and gives me a way into the full man page when I need more detail. Most of the time, a quick example is enough for me.
However, the deeper lesson this change taught me was that memorizing every command isn’t necessarily how you become an expert. Sometimes you just need to be good at finding that one piece of information you lack.
top stopped being enough
I wanted to see what my computer was actually doing
Once I learned top, a running Linux machine started to feel less mysterious. I open it whenever a computer becomes sluggish and observe the processes fight for CPU time and memory usage. top still works, but I don’t enjoy using it as much as I once did.
btop is my preferred option these days because it offers me a more visual way of observing processor, memory, disk, network, and process activity. I’m also able to filter and sort the processes, and when needed, I can move the interface around.
While btop isn’t giving me some magical new view of system activity, it presents much of the same information in a way that’s easier for me to scan. It’s a small point that makes a big difference when I’m troubleshooting. I can spot unusual CPU spikes, memory pressure, and disk activity almost instantly.
du made disk problems feel harder
ncdu turned disk-usage numbers into something I could explore
I still respect the du command a lot. It shows the amount of disk space that files and directories occupy. But it’s not the best tool when I’m trying to understand why a drive is suddenly full.
My usual process would involve running du against a directory, making its output human-readable, changing the depth of the scan, sorting the output, and repeating the process. In the end, I am doing too much work just to understand the output.
ncdu is a more interactive text-based usage analyzer. While ncdu is built around the same basic disk-usage information as du, it lets me move through the directory tree to see where the space is going. It’s like du, but a far more interactive version.
On my home server, this makes a huge difference. I don’t just stare at a list of directory sizes, but can explore all of them until I get to what’s consuming the storage.
I still use them when Linux gives me a reason
I don’t think I wasted my time learning commands that I now rarely use. The process helped me understand Linux. Linux itself didn’t change, but my workflow and the way I work with the OS evolved. A lot of these commands are still in the back of my mind, and on some rare occasions, the old tool is the one that works perfectly for a specific scenario.