Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104667644
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-04-18 23:25:19

#/bin/sh
#
# File: totalsize.sh
# Use : show the size of the files and sub directories
#

if [ $# -gt 0 ]
then
     echo "Usage: $totalsize.sh  (Note: no arguments)"
     exit
fi

bgntime=`date +%s` 
tmpval=$1
totalsize=0
totalsizedir=0
echo "1) Files"
echo "     MB              KB                   File"
echo "------------------------------------------------------------------------"
#NF   the nums of fields per row
ls -l $1 |grep -v ^d  |sort -n  +4 |awk '(NF > 2){totalsize=totalsize+$5;printf "%14.3fM  %14.3fK  %s\n",$5/1024/1024M,$5/1024,$NF} END{ printf "------------Total:%fM-------------",totalsize/1024/1024}'|sed 's:/.*/\([^/]\{1,\}\)$:\1:g'

echo 
echo

echo "2) Dirs"
echo "     MB              KB                   Directories"
echo "------------------------------------------------------------------------"
du $1 --max-depth=1 | sort -n|awk '$2!="." {totalsizedir=totalsizedir+$1;printf "%14.3fM  %14.3fK  %s\n",$1/1024,$1,$2} END{printf "--------------Total: %fM---------------\n",totalsizedir/1024 }'|sed 's:/.*/\([^/]\{1,\}\)$:\1:g'

endtime=`date +%s`
echo "Total Time: $(($endtime-$bgntime))s"
阅读(384) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~