#!/bin/sh
# [t]ree [l]ist
# List files recursively with [dirsfirst] including hidden files (-a)
#  showing sizes of directories (--du) and files in [h]uman readable form
#  with forced [C]olorization and pipe into less
# If first arg is a digit, it displaces the default depth of 3
# Any other arguments (usually pathnames) are passed on to the tree command
case "$1" in ([0-9]) depth=$1; shift;; esac
tree -a --dirsfirst --du -h -C -L ${depth:-3} "$@" | ${PAGER:-less}