#
# Displays the grand total disk usage using human readable units.
#
# Authors:
#   Suraj N. Kurapati <sunaku@gmail.com>
#   Sorin Ionescu <sorin.ionescu@gmail.com>
#

# function dut {

(( $# == 0 )) && set -- *

if [[ ${(@M)${(f)"$(du --version 2>&1)"}:#*GNU *} ]]; then
  du -khsc "$@" | sort -h -r
else
  local line size name
  local -a record

  while IFS=$'\n' read line; do
    record=(${(z)line})
    size="$(($record[1] / 1024.0))"
    name="$record[2,-1]"
    printf "%9.1LfM    %s\n" "$size" "$name"
  done < <(du -kcs "$@") | sort -n -r
fi

# }