Hex Artifact Content

Artifact b2157ac594aa14ea8e9a6e269732c557a2a3e76b:


0000: 23 21 20 2f 62 69 6e 2f 73 68 0a 23 20 6d 6b 69  #! /bin/sh.# mki
0010: 6e 73 74 61 6c 6c 64 69 72 73 20 2d 2d 2d 20 6d  nstalldirs --- m
0020: 61 6b 65 20 64 69 72 65 63 74 6f 72 79 20 68 69  ake directory hi
0030: 65 72 61 72 63 68 79 0a 23 20 41 75 74 68 6f 72  erarchy.# Author
0040: 3a 20 4e 6f 61 68 20 46 72 69 65 64 6d 61 6e 20  : Noah Friedman 
0050: 3c 66 72 69 65 64 6d 61 6e 40 70 72 65 70 2e 61  <friedman@prep.a
0060: 69 2e 6d 69 74 2e 65 64 75 3e 0a 23 20 43 72 65  i.mit.edu>.# Cre
0070: 61 74 65 64 3a 20 31 39 39 33 2d 30 35 2d 31 36  ated: 1993-05-16
0080: 0a 23 20 50 75 62 6c 69 63 20 64 6f 6d 61 69 6e  .# Public domain
0090: 0a 0a 23 20 24 49 64 3a 20 6d 6b 69 6e 73 74 61  ..# $Id: mkinsta
00a0: 6c 6c 64 69 72 73 2c 76 20 31 2e 32 20 32 30 30  lldirs,v 1.2 200
00b0: 30 2f 30 31 2f 32 30 20 30 32 3a 30 31 3a 31 37  0/01/20 02:01:17
00c0: 20 61 62 6f 72 72 20 45 78 70 20 24 0a 0a 0a 65   aborr Exp $...e
00d0: 72 72 73 74 61 74 75 73 3d 30 0a 0a 66 6f 72 20  rrstatus=0..for 
00e0: 66 69 6c 65 0a 64 6f 0a 20 20 20 73 65 74 20 66  file.do.   set f
00f0: 6e 6f 72 64 20 60 65 63 68 6f 20 22 3a 24 66 69  nord `echo ":$fi
0100: 6c 65 22 20 7c 20 73 65 64 20 2d 6e 65 20 27 73  le" | sed -ne 's
0110: 2f 5e 3a 5c 2f 2f 23 2f 3b 73 2f 5e 3a 2f 2f 3b  /^:\//#/;s/^://;
0120: 73 2f 5c 2f 2f 20 2f 67 3b 73 2f 5e 23 2f 5c 2f  s/\// /g;s/^#/\/
0130: 2f 3b 70 27 60 0a 20 20 20 73 68 69 66 74 0a 0a  /;p'`.   shift..
0140: 20 20 20 70 61 74 68 63 6f 6d 70 3d 0a 20 20 20     pathcomp=.   
0150: 66 6f 72 20 64 0a 20 20 20 64 6f 0a 20 20 20 20  for d.   do.    
0160: 20 70 61 74 68 63 6f 6d 70 3d 22 24 70 61 74 68   pathcomp="$path
0170: 63 6f 6d 70 24 64 22 0a 20 20 20 20 20 63 61 73  comp$d".     cas
0180: 65 20 22 24 70 61 74 68 63 6f 6d 70 22 20 69 6e  e "$pathcomp" in
0190: 0a 20 20 20 20 20 20 20 2d 2a 20 29 20 70 61 74  .       -* ) pat
01a0: 68 63 6f 6d 70 3d 2e 2f 24 70 61 74 68 63 6f 6d  hcomp=./$pathcom
01b0: 70 20 3b 3b 0a 20 20 20 20 20 65 73 61 63 0a 0a  p ;;.     esac..
01c0: 20 20 20 20 20 69 66 20 74 65 73 74 20 21 20 2d       if test ! -
01d0: 64 20 22 24 70 61 74 68 63 6f 6d 70 22 3b 20 74  d "$pathcomp"; t
01e0: 68 65 6e 0a 20 20 20 20 20 20 20 20 65 63 68 6f  hen.        echo
01f0: 20 22 6d 6b 64 69 72 20 24 70 61 74 68 63 6f 6d   "mkdir $pathcom
0200: 70 22 0a 0a 20 20 20 20 20 20 20 20 6d 6b 64 69  p"..        mkdi
0210: 72 20 22 24 70 61 74 68 63 6f 6d 70 22 20 7c 7c  r "$pathcomp" ||
0220: 20 6c 61 73 74 65 72 72 3d 24 3f 0a 0a 20 20 20   lasterr=$?..   
0230: 20 20 20 20 20 69 66 20 74 65 73 74 20 21 20 2d       if test ! -
0240: 64 20 22 24 70 61 74 68 63 6f 6d 70 22 3b 20 74  d "$pathcomp"; t
0250: 68 65 6e 0a 20 20 09 20 20 65 72 72 73 74 61 74  hen.  .  errstat
0260: 75 73 3d 24 6c 61 73 74 65 72 72 0a 20 20 20 20  us=$lasterr.    
0270: 20 20 20 20 66 69 0a 20 20 20 20 20 66 69 0a 0a      fi.     fi..
0280: 20 20 20 20 20 70 61 74 68 63 6f 6d 70 3d 22 24       pathcomp="$
0290: 70 61 74 68 63 6f 6d 70 2f 22 0a 20 20 20 64 6f  pathcomp/".   do
02a0: 6e 65 0a 64 6f 6e 65 0a 0a 65 78 69 74 20 24 65  ne.done..exit $e
02b0: 72 72 73 74 61 74 75 73 0a 0a 23 20 6d 6b 69 6e  rrstatus..# mkin
02c0: 73 74 61 6c 6c 64 69 72 73 20 65 6e 64 73 20 68  stalldirs ends h
02d0: 65 72 65 0a                                      ere.