15

On my linux machine, you can tell intact symlinks from broken ones, because broken ones are colored red. I've tried to set this up on my mac by adding some configurations to PSCOLORS in my .bash_profile, but so far nothing has worked. I've managed to get the coloring to tell apart directories, files, executables, and symlinks. However, the broken symlinks are not a different color than intact symlinks. Searching around on google hasn't rendered any promising results. Ideas? Tricks?

1
  • 1
    You might be successful in installing a port of Linux' ls that supports coloring symbolic links for their targets, and colors orphaned links. OS X's ls simply cannot do it. It's 150KB of source code vs. 25KB of source code...
    – Daniel Beck
    Commented May 18, 2012 at 9:41

2 Answers 2

7

I don't think it's possible – the man page for ls doesn't list a color slot for broken symlinks.

Here's a handy find one-liner for finding broken symlinks:

find -L . -type l -ls
13

Install Homebrew first.

  1. Install GNU coreutils: brew install coreutils
  2. Put the following in your ~/.bash_profile: eval $(gdircolors) alias ls="gls --color=auto"

Open a new shell, and broken links will be highlighted like on Linux.

3
  • 1
    don't forget to add the following alias in your ~/.bash_profile: alias ls="gls --color=auto"
    – carlodef
    Commented Oct 31, 2014 at 14:43
  • 1
    As it is just an output of dircolors, you can as well just put eval $(dircolors) in your ~/.bash_profile (if dircolors is installed)
    – Scz
    Commented Nov 11, 2016 at 10:27
  • Nice tips, I've added it to the answer. Thanks to @lorenzo. Commented Nov 20, 2016 at 2:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .