/[PAMELA software]/yoda/mkinstalldirs
ViewVC logotype

Contents of /yoda/mkinstalldirs

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4.0 - (show annotations) (download)
Sun Mar 6 04:33:01 2005 UTC (19 years, 9 months ago) by kusanagi
Branch: MAIN
CVS Tags: yodaPreTermistors2_1/00, YODA4_1/00, YODA4_0/04, YODA4_0/03, YODA4_0/02, YODA4_0/01, YODA4_3/02, YODA4_3/00, YODA4_3/01, YODA4_2/01, YODA4_2/00, YODA4_2/03, yodaPreTermistores2_0/00
Branch point for: PreThermistores2
Changes since 3.0: +0 -0 lines
Stable version 4.0 - 6 March 2005 - Maurizio Nagni

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 errstatus=0
8 dirmode=""
9
10 usage="\
11 Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
12
13 # process command line arguments
14 while test $# -gt 0 ; do
15 case "${1}" in
16 -h | --help | --h* ) # -h for help
17 echo "${usage}" 1>&2; exit 0 ;;
18 -m ) # -m PERM arg
19 shift
20 test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
21 dirmode="${1}"
22 shift ;;
23 -- ) shift; break ;; # stop option processing
24 -* ) echo "${usage}" 1>&2; exit 1 ;; # unknown option
25 * ) break ;; # first non-opt arg
26 esac
27 done
28
29 for file
30 do
31 if test -d "$file"; then
32 shift
33 else
34 break
35 fi
36 done
37
38 case $# in
39 0) exit 0 ;;
40 esac
41
42 case $dirmode in
43 '')
44 if mkdir -p -- . 2>/dev/null; then
45 echo "mkdir -p -- $*"
46 exec mkdir -p -- "$@"
47 fi ;;
48 *)
49 if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
50 echo "mkdir -m $dirmode -p -- $*"
51 exec mkdir -m "$dirmode" -p -- "$@"
52 fi ;;
53 esac
54
55 for file
56 do
57 set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
58 shift
59
60 pathcomp=
61 for d
62 do
63 pathcomp="$pathcomp$d"
64 case "$pathcomp" in
65 -* ) pathcomp=./$pathcomp ;;
66 esac
67
68 if test ! -d "$pathcomp"; then
69 echo "mkdir $pathcomp"
70
71 mkdir "$pathcomp" || lasterr=$?
72
73 if test ! -d "$pathcomp"; then
74 errstatus=$lasterr
75 else
76 if test ! -z "$dirmode"; then
77 echo "chmod $dirmode $pathcomp"
78
79 lasterr=""
80 chmod "$dirmode" "$pathcomp" || lasterr=$?
81
82 if test ! -z "$lasterr"; then
83 errstatus=$lasterr
84 fi
85 fi
86 fi
87 fi
88
89 pathcomp="$pathcomp/"
90 done
91 done
92
93 exit $errstatus
94
95 # Local Variables:
96 # mode: shell-script
97 # sh-indentation: 3
98 # End:
99 # mkinstalldirs ends here

  ViewVC Help
Powered by ViewVC 1.1.23