= Find broken symlinks with "find"
:categories: shell

:annex:        https://git-annex.branchable.com/
:annex-wanted: https://git-annex.branchable.com/git-annex-wanted/

The `find` command knows how to show broken symlinks:

[source,sh]
----
find . -xtype l
----

This was useful to me when combined with {annex}[Git Annex].  Its
{annex-wanted}[`wanted`] option allows you to have a "sparse" checkout of the
content, and save space by not having to copy every annexed file locally:

[source,sh]
----
git annex wanted . 'exclude=Music/* and exclude=Videos/*'
----

You can `find` any broken symlinks outside those directories by querying with
Git Annex itself, but `find . -xtype l` works on other places too, where broken
symlinks might be a problem.
