zoukankan      html  css  js  c++  java
  • linux统计多个文件大小总和

    首先:查看当前文件夹大小的命令是:

    [root@host1 test]# du -sh
    39M	.
    

      查看当前文件夹下所有文件的大小:

    [root@host1 test]# du -sh *
    108K	config-2.6.32-573.el6.x86_64
    264K	efi
    284K	grub
    27M	initramfs-2.6.32-573.el6.x86_64.img
    4.4M	initrd-2.6.32-573.el6.x86_64kdump.img
    4.0K	lost+found
    204K	symvers-2.6.32-573.el6.x86_64.gz
    2.5M	System.map-2.6.32-573.el6.x86_64
    8.0K	test_123
    8.0K	test_abc
    12K	testlog
    8.0K	test_xyz
    4.1M	vmlinuz-2.6.32-573.el6.x86_64
    

      查看当前文件夹下所有文件的大小并按照大小来排序:

    [root@host1 test]# du -sk * | sort -n
    4	lost+found
    8	test_123
    8	test_abc
    8	test_xyz
    12	testlog
    108	config-2.6.32-573.el6.x86_64
    204	symvers-2.6.32-573.el6.x86_64.gz
    264	efi
    284	grub
    2528	System.map-2.6.32-573.el6.x86_64
    4124	vmlinuz-2.6.32-573.el6.x86_64
    4492	initrd-2.6.32-573.el6.x86_64kdump.img
    27308	initramfs-2.6.32-573.el6.x86_64.img
    

      由于du -sh命令显示出来的单位不统一,所以我们用du -sk命令使单位统一以进行排序

      查找以".img"结尾的所有文件的大小的总和:

    [root@host1 test]# find . -name "*.img" | xargs du -cm
    5	./initrd-2.6.32-573.el6.x86_64kdump.img
    27	./initramfs-2.6.32-573.el6.x86_64.img
    32	总用量
    

      查找60天以前所修改的文件的大小总和:

    [root@host1 test]# find . -mtime +60 | xargs du -cm
    1	./grub/splash.xpm.gz
    1	./config-2.6.32-573.el6.x86_64
    1	./symvers-2.6.32-573.el6.x86_64.gz
    1	./efi/EFI/redhat/grub.efi
    5	./vmlinuz-2.6.32-573.el6.x86_64
    3	./System.map-2.6.32-573.el6.x86_64
    1	./.vmlinuz-2.6.32-573.el6.x86_64.hmac
    8	总用量
    

      如果我们把所有需要统计的文件的名字列入到一个表格里,我们还可以这么用:

    [root@host1 test]# cat list.txt  | xargs du -cm
    27	initramfs-2.6.32-573.el6.x86_64.img
    5	initrd-2.6.32-573.el6.x86_64kdump.img
    1	config-2.6.32-573.el6.x86_64
    32	总用量
    当然,这条命令等同于:
    [root@host1 test]# du -cm `cat list.txt `
    27	initramfs-2.6.32-573.el6.x86_64.img
    5	initrd-2.6.32-573.el6.x86_64kdump.img
    1	config-2.6.32-573.el6.x86_64
    32	总用量
    

      总的来说需要运用xargs命令,这个命令主要是把接收到的数据重新格式化,再将其作为参数提供给其他命令,下一篇主要讲下xargs命令的运用。

      

      

  • 相关阅读:
    使用video2chars将视频转字符图
    Android调用打印机
    WPF多线程UI更新
    设计模式在JDK中的应用
    23种设计模式(概念、原则、场景、优点、缺点、应用)简述
    Bridge 、 Adapter 和 Facade 的区别
    UML类图与类的关系详解
    uml 类图依赖与关联的区别
    UML类图几种”关系“的总结
    面试官问你有什么要问的时候,大胆的提出类似问题
  • 原文地址:https://www.cnblogs.com/01-single/p/6882385.html
Copyright © 2011-2022 走看看