March 31, 2013, 8:42 PM — On Unix systems, there are commands that do what they need to do and then there are commands that knock your socks off day after day, saving you gobs of time, taking the tedium out of systems administration and giving you the insights that you need to keep your systems humming without making you work too hard. Here are some of the I-can't-live-without commands that me and my Unix buddies find we need every day -- and can't imagine living without -- and some of the ways we use them.
There's just no getting along without top. While there are other performance commands that provide a lot more detail on how a system is performing, top provides the most critical information about how your system is working in the most succinct fashion. Fortunately, top is installed by default on a lot of systems. If you don't have it, get it. This command show what your system's load looks like, as well as highlight those processes which are hogging the bulk of your system's resources. Top also displays memory stats and swapping activity. Top is one of my all time favorite Unix commands and one I couldn't manage without.
The ping command was one of the first things that a Unix consultant I worked with many years ago taught me and I've used it many thousands of times since. This command can tell you whether other systems up and even whether your own system is functioning on the network. If I'm sitting in my home office and wondering whether my network connection is up, I'll ping a familiar system much sooner than I'll go look the state of my network interface and generally will know very quickly if my network connection is up.
The tail command is handy for many things, but the -f option is special. The top -f command allows you to watch as entries are being added to your log files. Much better than just using tail, it shows entries as they're being added. Do something in one window and watch the resultant log entries in another. This helps you tie cause and effect together without having to think too hard about which log entries relate to which activities.
I doubt that a day goes by without my "grepping" on something. I may be checking on running processes, pulling lines from a log file or looking through text files to analyze a problem, but grep is always at the tip of my tongue.
I don't use the tee command much at all, but friends of mine swear by it. They say that being able to add command output to log files while examining it saves them tons of time and helps them tremendously. They view the output that tells them what's happening on their systems while creating a record of their output at the same time.
I still use find quite often to hunt down large files or files with permissions I'd rather not support.
flickr / L. Marie