#!/bin/sh - PATH="$PATH":/bin:/usr/bin; export PATH owner=root.source USER=${USER-$LOGNAME} Owner=$USER.$USER # fixmod - run a recursive chmod to standardize file and directory permissions # Steve Kinzler, kinzler@cs.indiana.edu, Nov 04/Jan 06 # http://www.cs.indiana.edu/~kinzler/home.html#unix chown= case "$1" in -[oO]) chown=$1; shift;; esac case "$#,$1" in *,-h) echo 'usage: fixmod [ -o | -O ] [ find_args ]' 1>&2 echo " -o also chown $owner" 1>&2 echo " -O also chown $Owner" 1>&2; exit 1;; 0,*) set .;; esac case "$chown" in # must be run post-set for some reason?! -o) chown="( -exec chown $owner {} ; -o -true )";; -O) chown="( -exec chown $Owner {} ; -o -true )";; esac exec find "$@" $chown \ \( -type d \( -exec chmod a+rx,u+w,go-w {} \; -o -true \) \) -o \ \( -type f -exec chmod a+r,u+w,go-w {} \; \)