• Colorized output for ls on Mac OS X

    Short route:

    alias ls=”ls -G”
    Permanent short route:
    echo alias ls=\”ls -G\” >> ~/.bash_profile
    Long explanation:
    Mac OS X’s BSD-based implementation of ls does not have support for GNU-style long options such as ls –color. All its options are short options. To get color, you can pass -G.
    So what we do is tell bash that whenever we type ls, we actually want to type ls -G.
    alias ls=”ls -G”
    ls also supports another way to turn on colorization, and this is to set environment variable CLICOLORS.
    export CLICOLORS=1
    You can also reconfigure the colors used. Some people recommend this colorset:
    export LSCOLORS=dxfxcxdxbxegedabagacad
    What does this mean? Each letter is one color. For example, d is brown, x is default background and foreground, B is bold red, etc. Each position determines function. Straight from the horse’s mouth (man ls):
                         The color designators are as follows:

                               a     black
                               b     red
                               c     green
                               d     brown
                               e     blue
                               f     magenta
                               g     cyan
                               h     light grey
                               A     bold black, usually shows up as dark grey
                               B     bold red
                               C     bold green
                               D     bold brown, usually shows up as yellow
                               E     bold blue
                               F     bold magenta
                               G     bold cyan
                               H     bold light grey; looks like bright white
                               x     default foreground or background

                         Note that the above are standard ANSI colors.  The actual
                         display may differ depending on the color capabilities of
                         the terminal in use.

                         The order of the attributes are as follows:

                               1.   directory
                               2.   symbolic link
                               3.   socket
                               4.   pipe
                               5.   executable
        
                          6.   block special
                               7.   character special
                               8.   executable with setuid bit set
                               9.   executable with setgid bit set
                               10.  directory writable to others, with sticky bit
                               11.  directory writable to others, without sticky
                                    bit

                         The default is “exfxcxdxbxegedabagacad”, i.e. blue fore-
                         ground and default background for regular directories,
                         black foreground and red background for setuid executa-
                         bles, etc.

    Tags: ,

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    *

    You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>