[ $# -gt 0 ] && p=$1 || p='.'

flag=""
p="."
divver=1
units=MB
# set -x
set -- `getopt ag  $*`
while [ ! $1 = "--" ]
do
case $1 in
-a) flag="-a" 
shift 1
;;
-g)
divver=1024
units="GB"
shift 1
;;
esac
done
shift 1  ## shift out --
[ $# -gt 0 ] && p=$1 || p='.'
# set +x

du -kx $flag  $p  |sort -k1n|awk -v gb=$divver -v unit=$units '{
sz=$1
 $1=""
printf("%10.2f %s %s\n", sz/1024/gb,unit,$0) }'
