Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2045861
  • 博文数量: 470
  • 博客积分: 10206
  • 博客等级: 上将
  • 技术积分: 5620
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-03 12:50
文章分类

全部博文(470)

文章存档

2012年(1)

2011年(18)

2010年(47)

2009年(404)

分类:

2009-04-18 15:35:36

ls  -dlhS /path/*



您对本贴的看法:

__________________________________

农民。。。。。种田的.
| |
  帅哥
大天使



CU编号: 631385
注册:2007-10-21
最后登录: 2009-04-18
帖子:
精华:0







状态:...保密...

[] [] [博客]


[]     顶部
发表于 2009-4-8 16:11 


QUOTE:
原帖由 我是DBA 于 2009-4-8 15:28 发表
[root@datacenter apache]# for i in $(ls -l |grep '^d' |du -s * |sort -nr|awk '{print $2}');do du -sh $i;done
573M    htdocs
130M    logs
73M     htdocs.tar
40M     template
19M     manual
...

du -s *是对所有文件还是对管道前的文件?



您对本贴的看法:

__________________________________

给个工作吧!
| |
(我在学习,我要进步)
精灵使
打破水锅问到底。




CU编号: 713644
注册:2008-6-3
最后登录: 2009-04-18
帖子:
精华:0







状态:...在线...

[] [] [博客]


[]     顶部
发表于 2009-4-8 16:16 
回复 #12 changzi100 的帖子

我错了。。哈哈
[root@datacenter apache]# for i in $(ls -l|grep '^d' |awk '{print "du -s "$NF}'|sh|sort -nr|awk '{print $2}');do du -sh $i;done     
573M    htdocs
131M    logs
40M     template
19M     manual
16M     modules
3.4M    freeidc
2.3M    lib
1.8M    icons
1.7M    include
1.7M    bin
1.5M    bakfreeidc
408K    conf
292K    error
248K    build
128K    man
24K     cgi-bin



您对本贴的看法:

__________________________________

C 初学,请多多指教。

| |

侠客




CU编号: 570318
注册:2007-5-31
最后登录: 2009-04-17
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-4-8 16:36 
学习了,不过还是那个问题,能不能只用du一次



您对本贴的看法:
| |
  帅哥 (黑哥)
精灵使



CU编号: 631768
注册:2007-10-22
最后登录: 2009-04-18
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-4-8 16:43 
try:

CODE:
$ awk '{mul=1;if($1~/K/) mul=1024;else if ($1~/M/) mul=1024*1024;else if($1~/G/) mul=1024*1024*1024;$2=$2 " " $1*mul;print}' <(du -sh *)|sort -k 3rg|cut -d \  -f 1-2




您对本贴的看法:

__________________________________

LIVE FREE OR DIE!     K.I.S.S.


| |

侠客




CU编号: 570318
注册:2007-5-31
最后登录: 2009-04-17
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-4-8 17:09 


QUOTE:
原帖由 blackold 于 2009-4-8 16:43 发表
try:$ awk '{mul=1;if($1~/K/) mul=1024;else if ($1~/M/) mul=1024*1024;else if($1~/G/) mul=1024*1024*1024;$2=$2 " " $1*mul;print}'  

我先好好看看,估计我得看几个小时的,看懂了在来请教。呵呵。
在这在谢谢各位了,大家非常热心。



您对本贴的看法:
| |

天使



CU编号: 347943
注册:2005-12-11
最后登录: 2009-04-18
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-4-8 17:58 
错了错了:mrgreen:

[ 本帖最后由 ywlscpl 于 2009-4-8 18:05 编辑 ]



您对本贴的看法:

__________________________________

shell新手&&awk新手
我的awk学习笔记
http://blog.chinaunix.net/u3/91453/showart_1798635.html
| |

光明使者




CU编号: 745494
注册:2008-8-15
最后登录: 2009-04-18
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-4-8 17:59 
dba的不错.....    LZ把大家带入了胡同,其实可以现排序后在人性化的显示^_^



您对本贴的看法:

__________________________________

http://ubuntuer.cublog.cn欢迎做做
| |

侠客




CU编号: 570318
注册:2007-5-31
最后登录: 2009-04-17
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-4-8 18:31 


QUOTE:
原帖由 ubuntuer 于 2009-4-8 17:59 发表
dba的不错.....    LZ把大家带入了胡同,其实可以现排序后在人性化的显示^_^

呵呵。我也这么想来着,但是我怕问题越讲越复杂,干脆一路走到底得了。
那最简单的方法是什么呢,需求是把目录下的所有子目录按大小排序,显示出来,大小要用人性化显示。:mrgreen:

[ 本帖最后由 kuangzhangshi 于 2009-4-8 18:36 编辑 ]



您对本贴的看法:
| |

天使



CU编号: 347943
注册:2005-12-11
最后登录: 2009-04-18
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-4-8 19:08 


CODE:
du -sh * |awk '{v=substr($1,length($1),1)}v=="G"{$0="1G "$0}v=="M"{$0="2M "$0}v=="K"{$0="3K "$0}v=="0"{$0="4Z "$0}1' |sort -k1,1n -k2,2nr |awk '{print substr($0,4)}'

[ 本帖最后由 ywlscpl 于 2009-4-8 19:28 编辑 ]



您对本贴的看法:

__________________________________

shell新手&&awk新手
我的awk学习笔记
http://blog.chinaunix.net/u3/91453/showart_1798635.html
阅读(2139) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~