Annotation of embedaddon/dhcping/mkinstalldirs, revision 1.1.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>