jumanjihouse / pre-commit-hooks

git pre-commit hooks that work with http://pre-commit.com/
MIT License
114 stars 52 forks source link

shfmt pre-commit hook fails on files with spaces in path #102

Open robert914 opened 2 years ago

robert914 commented 2 years ago

The shfmt pre-commit hook fails if the file path contains spaces. The issue is that these lines in: https://github.com/jumanjihouse/pre-commit-hooks/blob/master/pre_commit_hooks/shfmt

readonly cmd="shfmt -w $*"
echo "[RUN] ${cmd}"
${cmd}

should probably instead be something like:

readonly cmd=(shfmt "-w" "$@")
echo "[RUN] ${cmd[@]}"
"${cmd[@]}"

To properly handle spaces in paths. Thanks!