#!/bin/sh
#
# Copyright (c) 1999,2000 WU-FTPD Development Group.
# All rights reserved.
#
# Portions Copyright (c) 1980, 1985, 1988, 1989, 1990, 1991, 1993, 1994
# The Regents of the University of California.
# Portions Copyright (c) 1993, 1994 Washington University in Saint Louis.
# Portions Copyright (c) 1989 Massachusetts Institute of Technology.
# Portions Copyright (c) 1998 Sendmail, Inc.
# Portions Copyright (c) 1983, 1995, 1996, 1997 Eric P. Allman.
# Portions Copyright (c) 1996, 1998 Berkeley Software Design, Inc.
# Portions Copyright (C) 1991, 1992, 1993, 1994, 1995 1996, 1997
# Free Software Foundation, Inc.
# Portions Copyright (c) 1997 Stan Barber.
# Portions Copyright (c) 1997 Kent Landfield.
#
# Use and distribution of this software and its source code are governed by
# the terms and conditions of the WU-FTPD Software License ("LICENSE").
#
# If you did not receive a copy of the license, it may be obtained online at
# http://www.wu-ftpd.org/license.html.
#
# $Id: mkdirhier,v 1.5 2000/07/01 18:42:38 wuftpd Exp $
#
newline='
'
IFS=$newline
case ${1--} in
-*) echo >&2 "mkdirhier: usage: mkdirhier directory ..."; exit 1
esac
status=
for directory
do
case $directory in
'')
echo >&2 "mkdirhier: empty directory name"
status=1
continue;;
*"$newline"*)
echo >&2 "mkdirhier: directory name contains a newline: \`\`$directory''"
status=1
continue;;
///*) prefix=/;; # See Posix 2.3 "path".
//*) prefix=//;;
/*) prefix=/;;
-*) prefix=./;;
*) prefix=
esac
IFS=/
set x $directory
case $2 in
*/*) # IFS parsing is broken
IFS=' '
set x `echo $directory | tr / ' '`
;;
esac
IFS=$newline
shift
for filename
do
path=$prefix$filename
prefix=$path/
shift
test -d "$path" || {
paths=$path
for filename
do
if [ "$filename" != "." ]; then
path=$path/$filename
paths=$paths$newline$path
fi
done
mkdir $paths || status=$?
break
}
done
done
exit $status
syntax highlighted by Code2HTML, v. 0.9.1