The sys admin’s daily grind: exa

There is nothing that admins hate more than unnecessary typing at the console. That’s why Charly’s clever alternative exa replaces the classic, but ancient, ls.

There are very few commands that you type more often than ls when working in the shell. As experienced Linux users will know, the shorter a command is, the more important it is. Even the often expressed suspicion that the shortest commands have the longest man pages is something that ls cannot really refute. You would think that there is little to improve with ls, but the exa developers beg to differ.

Instead of a one-to-one replacement, exa [1] seeks to be the better ls. It gets by with far fewer parameters and is correspondingly less powerful. But if you use only the most common options – for me, that would be -l, -a, -t, -h, and --sort=size – you won’t miss anything. That’s because exa comes with sensible defaults that make some parameters superfluous. For example, exa always displays file sizes in a notation that is easily readable for humans, such as 2.9M instead of 2893342, which you first need to enable by adding -h in ls.

The output from exa -l, the counterpart of ls -l, looks like Figure 1. This is still very reminiscent of the original, except for the lush coloring. Using the additional -F parameter (for “file type”), I can show additional characters that indicate the file type. For example, an asterisk is appended to executable files, a slash to directories, and an at sign to symbolic links. The sort parameter, which is very important for me personally, also works as expected. The command --sort=size sorts by file size, while -r inverts the sort order.


Use Express-Checkout link below to read the full article (PDF).

Posted by Contributor