aboutsummaryrefslogtreecommitdiff
path: root/_tils
diff options
context:
space:
mode:
Diffstat (limited to '_tils')
-rw-r--r--_tils/2020-11-08-find-broken-symlinks-with-find.md34
1 files changed, 34 insertions, 0 deletions
diff --git a/_tils/2020-11-08-find-broken-symlinks-with-find.md b/_tils/2020-11-08-find-broken-symlinks-with-find.md
new file mode 100644
index 0000000..7912df0
--- /dev/null
+++ b/_tils/2020-11-08-find-broken-symlinks-with-find.md
@@ -0,0 +1,34 @@
+---
+
+title: Find broken symlinks with "find"
+
+date: 2020-11-08
+
+layout: post
+
+lang: en
+
+ref: find-broken-symlinks-with-find
+
+---
+
+The `find` command knows how to show broken symlinks:
+
+```shell
+find . -xtype l
+```
+
+This was useful to me when combined with [Git Annex][git-annex]. Its
+[`wanted`][git-annex-wanted] option allows you to have a "sparse" checkout of
+the content, and save space by not having to copy every annexed file locally:
+
+```shell
+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.
+
+[git-annex]: https://git-annex.branchable.com/
+[git-annex-wanted]: https://git-annex.branchable.com/git-annex-wanted/