ambevar-dotfiles/.local/bin/sanitize

27 lines
510 B
Bash
Executable File

#!/bin/sh
usage () {
cat <<EOF>&2
Usage: ${0##*/} FOLDERS
Set file/directory owner and permissions according to current umask for current
user.
EOF
}
[ $# -eq 0 ] && usage && exit 1
[ "$1" = "-h" ] && usage && exit
[ "$1" = "--" ] && shift
FMASK=$(umask -S | sed 's/x//g')
DMASK=$(umask -S)
[ -z "$UID" ] && UID=$(id -u)
[ -z "$GID" ] && GID=$(id -g)
for i ; do
find "$i" -exec chown -R "$UID:$GID" {} \;
find "$i" -type d -exec chmod "$DMASK" {} \;
find "$i" -type f -exec chmod "$FMASK" {} \;
done