7 releases
0.3.2 | May 14, 2023 |
---|---|
0.3.1 | May 14, 2023 |
0.2.0 | May 1, 2023 |
0.1.2 | May 1, 2023 |
#6 in #broken-links
7KB
102 lines
Check Symlinks
Check for broken symbolic links.
check-symlinks
is optmized for large codebases as well as small, incremental checks,
where the full commands are respectively,
fd --type symlink --exec sh -c 'test -e "$0"'
check-symlinks
git ls-files | xargs pre_commit_hooks/check_symlinks.py
while read file; do test -e "$test"; done < <(git ls-files)
find . -type l -not -path data ! -exec test -e {} \; -print0 | xargs --no-run-if-empty git ls-files
and check_symlinks.py
is from https://github.com/pre-commit/pre-commit-hooks.
Install
cargo install check-symlinks
Usage
By default, checks all unignored files recursively from the current working directory,
$ check-symlinks
"./broken_link" is not a valid symlink
File paths can also be passed,
$ check-symlinks broken_link doesnt_exist
"./broken_link" is not a valid symlink
NOTE: file arguments which don't exist are ignored.
Dependencies
~4–12MB
~130K SLoC