27 lines
472 B
Bash
Executable file
27 lines
472 B
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
has() {
|
|
if (( $# )); then
|
|
hash "$1" 2>/dev/null
|
|
fi
|
|
}
|
|
|
|
is_a() {
|
|
if (( $# > 1 )); then
|
|
head -1 "$1" | grep -qE '^#!.*'"$2"'$'
|
|
fi
|
|
}
|
|
|
|
find . -name .DS_Store -exec rm -f -- {} +
|
|
|
|
git status -zu | while read -rd '' xy filename; do
|
|
if [[ $xy = "??" || $xy = D ]]; then
|
|
continue
|
|
fi
|
|
|
|
if [[ $filename = *.sh ]] || is_a "$filename" bash; then
|
|
if has shellcheck && ! shellcheck -s bash "$filename"; then
|
|
exit 1
|
|
fi
|
|
fi
|
|
done
|