壊れたシンボリックリンクを一覧する

linux で,リンク先のファイルが存在しないシンボリックリンクを一覧するスクリプト

#! /bin/bash
usage="usage: ls-brokenlink\n  list up broken symbolic-link files"

for i in *; do
  if [ -h $i ];then
    if ! [ -a $i ];then
      echo $i
    fi
  fi
done

パスの通ったディレクトリに保存して, ls-brokenlink で実行すると,リンク先のファイルが存在しないシンボリックリンクの一覧が表示される.

既存のコマンドでありそうなのだが,見付けられなかったので作ってみた.