#!/usr/bin/ksh usage() { print -u2 ' Usage: %s [-t dir] Collects "du -sk *" infos from /var/sadm and /var/sadm/pkg in all zones. t dir .. directory where data files should be stored. Default: /tmp Example: $0 -t /var/tmp gawk -f du.awk sadm.* > sadm.cmp.txt gawk -f du.awk pkg.* > pkg.cmp.txt ' } TMPD="/tmp" while getopts "t:h" option ; do case "$option" in "h") usage; exit 0;; "t") if [ -d $OPTARG ]; then TMPD=$OPTARG else print -u2 "$OPTARG is not a directory - exiting" exit 1 fi ;; esac done if [ `/usr/ucb/whoami` != "root" ];then print -u2 "Wanna be root!" exit 2 fi IFS=':' zoneadm list -pi | while read ID ZN ST ZP BLA ; do if [ "$ZN" = "global" ]; then ROOT="" else ROOT="root/" fi cd ${ZP}/${ROOT}/var/sadm echo "Checking ${ZN}:/var/sadm ..." du -sk * >${TMPD}/sadm.${ZN}.du cd pkg echo "Checking ${ZN}:/var/sadm/pkg ..." du -sk * >${TMPD}/pkg.${ZN}.du done