Annotation of embedaddon/dhcping/mkinstalldirs, revision 1.1
1.1 ! misho 1: #! /bin/sh
! 2: # mkinstalldirs --- make directory hierarchy
! 3: # Author: Noah Friedman <friedman@prep.ai.mit.edu>
! 4: # Created: 1993-05-16
! 5: # Public domain
! 6:
! 7: # $Id: mkinstalldirs,v 1.1 2002/01/26 14:09:36 mavetju Exp $
! 8:
! 9: errstatus=0
! 10: dirmode=""
! 11:
! 12: usage="\
! 13: Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
! 14:
! 15: # process command line arguments
! 16: while test $# -gt 0 ; do
! 17: case "${1}" in
! 18: -h | --help | --h* ) # -h for help
! 19: echo "${usage}" 1>&2; exit 0 ;;
! 20: -m ) # -m PERM arg
! 21: shift
! 22: test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
! 23: dirmode="${1}"
! 24: shift ;;
! 25: -- ) shift; break ;; # stop option processing
! 26: -* ) echo "${usage}" 1>&2; exit 1 ;; # unknown option
! 27: * ) break ;; # first non-opt arg
! 28: esac
! 29: done
! 30:
! 31: for file
! 32: do
! 33: set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
! 34: shift
! 35:
! 36: pathcomp=
! 37: for d
! 38: do
! 39: pathcomp="$pathcomp$d"
! 40: case "$pathcomp" in
! 41: -* ) pathcomp=./$pathcomp ;;
! 42: esac
! 43:
! 44: if test ! -d "$pathcomp"; then
! 45: echo "mkdir $pathcomp"
! 46:
! 47: mkdir "$pathcomp" || lasterr=$?
! 48:
! 49: if test ! -d "$pathcomp"; then
! 50: errstatus=$lasterr
! 51: else
! 52: if test ! -z "$dirmode"; then
! 53: echo "chmod $dirmode $pathcomp"
! 54:
! 55: lasterr=""
! 56: chmod $dirmode "$pathcomp" || lasterr=$?
! 57:
! 58: if test ! -z "$lasterr"; then
! 59: errstatus=$lasterr
! 60: fi
! 61: fi
! 62: fi
! 63: fi
! 64:
! 65: pathcomp="$pathcomp/"
! 66: done
! 67: done
! 68:
! 69: exit $errstatus
! 70:
! 71: # Local Variables:
! 72: # mode:shell-script
! 73: # sh-indentation:3
! 74: # End:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>