Skip to content
Fragmented Development

Color ls output in less

Something that has always bothered me is that my beautiful, colorful ls command output is converted to stark, monochrome text whenever I pipe it to less. Syntax highlighting is extremely helpful when it comes to differentiating directories from normal, extension-less files.

Through a couple sessions of research and stumbling upon a helpful switch in the ls man page, I've come up with this embarrassingly simple command:

ls --color=always | less -R

That's it. Using --color=always on ls forces it to send color escape sequences to less, and -R forces less to pass them on to your terminal, which renders them in a glorious rainbow of your choosing.

I am immediately adding this to my RC file as default arguments, although you may want to be careful. This could potentially mess up scripts dependent on parsing raw ls output.

Tags: linux

Add Your Comment