For some reason when I execute the following:

ls --color=auto 

Results with:

ls: illegal option -- -
usage: ls [-ABCFGHLOPRSTUWabcdefghiklmnopqrstuwx1] [file ...]

Not sure why this is happening, I'm wondering if anyone else has had the same issue.


Depending on the OS, ls doesn't always have the functionalities.

There are two different versions of ls :

  • One from the BSD world (for example Mac OS X version) :

The --color=auto doesn't work, use -G instead.

  • One from the Free Software Foundation (Linux for example) :

You can use the --color=auto and the -G option does not list group.

By the way, this has nothing to do with zsh, except if you assign custom PATH in your .zshrc.


If you want the FSF version of ls, simply download the latest coreutils (8.4 now) and compile them.

This will allow you to use the this version. ls-color

  • Excellent input, I'm using OS X, but I also want to use the same profile in my Ubuntu machine, is that going to far? – JP Silvashy Feb 21 '10 at 2:42
  • I suppose it really doesn't have much to do with ZSH or OS X for that matter, I just want pretty colored directories and what not. – JP Silvashy Feb 21 '10 at 2:43
  • Of course you can ! I edited my post to show how to do it. – Studer Feb 21 '10 at 2:54

What kind of system are you using? Solaris/BSD ls don't support --color.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.