If you’ve never tried Midnight Commander…

FreeBSD Midnight Commander through SSH on my Mac
Midnight Commander on a FreeBSD machine running in an SSH session on my Mac

Perhaps it's because the first computer I ever used had DOS on it, but ever since I started using it in late 2005 I absolutely adore the Midnight Commander and use it almost exclusively to deal with file management tasks on my Macs and FreeBSD machines. If you've never used it before, you're missing out on a treat.

Midnight Commander is a text based, "orthodox" file maneger that adopts the interface of the venerable Norton Commander (Wikipedia) on DOS. The screen is split into two panes for showing the contents of folders, along with a menu bar, a shortcut key help pane at the bottom and a prompt you can use to enter regular shell commands, view their results and return. I often joke that last feature means you often never have to leave!

As Norton Commander did in DOS, Midnight Commander can be used to easily create and modify your file system without having to use Unix commands with possibly confusing arrays of options. If you're like me you already know how to create folders and symbolic links, move files, change permissions, rename folders and so forth, but as the existence of numerous graphical file managers attests to, sometimes it's just easier for larger projects and tasks to let a program do it for you.

Midnight Commander Light
Midnight Commander Light > in urxvt > in Openbox > on FreeBSD!

Regardless of whether you choose to use the original Midnight Commander or Midnight Commander Light they're also a cinch to configure via easy to use dialog boxes under the Options menu, no need to edit text files then relaunch the applications! Things that can be customised include the view (between horizontal or vertical panes), colour schemes, file highlighting and audible alerts. They also contain a slew of other features such as virtual filesystems which I admit I haven't even tried yet!

Most people who use Unix-like operating systems probably already are well aware of Midnight Commander, but for those of you just giving Linux, FreeBSD and so forth a try, you might want to look into it. The fact you don't need to launch an X11 graphical environment to do file management tasks is a huge plus, and you can even use it to easily maintain systems remotely through a secure shell. Very cool.

Midnight Commander is available from NetBSD's pkgsrc under /sysutils, the FreeBSD ports system under /misc and Mac OS X's MacPorts under /sysutils amongst others.