There are many tools out there to make using the command line easier and more powerful, a large amount are free and a lot are open source, meaning that you can tinker and improve the program for yourself and other users. Here are some of our favorite.


My usual Tmux configuration

My usual Tmux configuration. Clockwise from left: pane for working in, iftop network monitoring, htop system monitor

Tmux is a terminal multiplexer, this means it allows you to run several programs at once from the command line either in a single screen in ‘panes’ or in several tabs or ‘windows’. Making it incredibly easy to multitask or keep an eye on running systems. If you are using SSH to connect to a server you can keep programs running through disconnects.

We have written a post on the basics of using Tmux which you can see here.


htop running on my server

My server running Htop (I am unsure why it is using so much CPU it doesn’t normally!)

Htop is top on steroids, allowing you to quickly visually see what is using your system resources and kill any unruly processes. It allows you to sort by RAM and CPU usage, Process Priority and much more. The main advantages I find is over top are the colors and the bars, both of which make it very easy to see what is happening to your system quickly.


An apache access log open in lnav

An apache access log open in lnav

Lnav  allows you to search for terms or just keep an log open and have it update in real time. The syntax highlighting makes it very easy to quickly see what is going on and see any errors. Like htop above it is a quicker and easier way of getting information out of your system than the built in linux tools.


Goaccess using the apache access.log for this site

Using Goaccess to open the apache access.log for this site

Goaccess uses webserver log files to generate analytics, this can be more accurate than google analytics and other tools that use javascript as it can’t be blocked. But it does mean that it shows less detail and is harder to get a quick overview of what is happening.  Using both together or with other tools are useful to get a full view of what is happening on your server.


iftop showing the network connections to a server

Showing the network connections to a server with iftop

Iftop is a network monitoring tool, it is less complex than a lot of other similar tools, but this means that is is perfect for just having open in a tmux panel to monitor connections to see if anything is causing problems or you are using too much data.


There are many other tools out there these are just the ones I use daily and feel everyone should be aware of.

If you have any other suggestions of tools that I would find useful please comment below.