#!/bin/sh
#  
#	Shell script to list directories w/ recurrsion
#		-f flag prints files also
#
list ()
{
	local INPUT
	INPUT=$(/bin/ls -A ${1})
	TABSTOP="${TABSTOP}|  "
	for ENTRY in $INPUT
	do
		if [ -d ${1}/${ENTRY} ]
		then
			#echo "${TABSTOP}\b\b--${ENTRY}"
			printf "%s\b\b--%s\n" "${TABSTOP}" "${ENTRY}"
			ENTRY=${1}/${ENTRY}
			if [ -r ${ENTRY} ]
			then
				list ${ENTRY}
			fi
		else
			if [ $FLAG = 'true' ]
			then
				#echo "${TABSTOP}\b\b  ${ENTRY}"
				printf "%s\b\b--%s\n" "${TABSTOP}" "${ENTRY}"
			fi
		fi
	done
	TABSTOP=${TABSTOP%'|  '}
	return 0
}
#
#	start of main logic 
#
TABSTOP=''
if [ $# -lt 1 ]
then
	echo "Usage: listdir [-f] directory" >&2
	exit 1
fi
if [ $1 = '-f' ]
then
	FLAG='true'
	shift
else
	FLAG='false'
fi
if [ $# -ne 1 -o ! -d $1 ]
then
	echo "Usage: listdir [-f] directory" >&2
	exit 2
fi
list ${1}
exit 0
