免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4353 | 回复: 3
打印 上一主题 下一主题

[系统管理] 关于du或者是xargs命令的疑问 [复制链接]

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2016-01-01 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2019-04-28 15:36 |只看该作者 |倒序浏览

假设 /tmp 目录下有 a、b、c、d 4个目录,我想统计这4个目录的大小

我在/tmp目录下执行以下命令,没有出现我预期的结果,它只显示了./的大小
$find ./ -maxdepth 1 | xargs du -sh
0        ./


而只有我把./目录从结果中排除时,才会显示每个目录大小
$find ./ -maxdepth 1 | grep -v "^\./$" | xargs du -sh
0        ./b
0        ./c
0        ./d
0        ./a


而我把du命令中的-s参数去掉也是显示所有结果
$find ./ -maxdepth 1 | xargs du -h
0        ./b
0        ./c
0        ./d
0        ./a
0        ./



为何会出现这种结果呢,按我的理解应该是xargs后的du命令会对前一个命令中的所有结果做处理。虽然du的-s参数是如果处理统计到这个某个目录,只统计该目录大小,不处理它里面的内容。但它要处理的内容应该是5个独立的目录
./     ./a       ./b         ./c         ./d
对./的处理结果应该不影响./a和./b等结果才对啊



论坛徽章:
0
2 [报告]
发表于 2019-05-09 00:36 |只看该作者
不知道为何要这么复杂,直接 du -d1 -h不就行了么?

论坛徽章:
0
3 [报告]
发表于 2019-05-24 14:08 |只看该作者
du . -h --max-depth=1   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP