利用shell计算find命令查出后的总文件大小

简介:

  下午一个同事咨询如何计算find命令查询出来的文件总大小,想了想自己只能用shell脚本实现,于是就实践了下,脚本内容如下:

 
  1. #! /bin/bash  
  2. rm -rf    /tmp/tmp.txt  
  3. rm -rf    /tmp/count.txt  
  4. rm -rf    /tmp/1.sql  
  5. find /root/* -type f -name "*.txt" > /tmp/tmp.txt  
  6.  
  7. NUM=$(cat /tmp/tmp.txt | wc -l)  
  8.  
  9. for (( i=1; i<=$NUM; i=i+1));  
  10.         do  
  11.         LINE=$(sed -n "$i"p  /tmp/tmp.txt)  
  12.         ls -l $LINE |cut -d ' ' -f 5 >> /tmp/count.txt  
  13. done  
  14.  
  15.  
  16.  
  17. NUM1=$(cat /tmp/count.txt | wc -l)  
  18. for (( i=1; i<=$NUM1; i=i+1));  
  19. do  
  20.    A=$(sed -n "$i"p  /tmp/count.txt)  
  21.    echo -n $A + >> /tmp/1.sql  
  22. done  
  23.  
  24.  
  25. SUM=$(echo "$(sed 's/.$//' /tmp/1.sql)" |bc)  
  26. echo "$SUM" 
  27.  
  28. rm -rf    /tmp/tmp.txt  
  29. rm -rf    /tmp/count.txt  
  30. rm -rf    /tmp/1.sql 

[root@rhel6 ~]# sh 1.sh 
277109

其实也可以简单使用awk命令实现,不过不太懂awk,只能使用shell实现了,哈哈!

[root@rhel6 ~]# find ./* -name "*.txt" -exec ls -lh {} \;| awk 'BEGIN {SUM7=0}{ SUM7+=$5} END {print SUM7}'
272.1

本文转自斩月博客51CTO博客,原文链接http://blog.51cto.com/ylw6006/634433如需转载请自行联系原作者


ylw6006

相关文章
|
8天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
25天前
|
安全 Shell Linux
【Shell 命令集合 系统管理 】Linux 锁定终端 vlock命令 使用指南
【Shell 命令集合 系统管理 】Linux 锁定终端 vlock命令 使用指南
35 1
|
25天前
|
Shell Linux C语言
【Shell 命令集合 系统管理 】Linux 显示系统的平均负载情况 tload命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示系统的平均负载情况 tload命令 使用指南
39 1
|
25天前
|
安全 Shell Linux
【Shell 命令集合 系统管理 】Linux 切换当前用户身份为另一个用户 su命令 使用指南
【Shell 命令集合 系统管理 】Linux 切换当前用户身份为另一个用户 su命令 使用指南
34 1
|
25天前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 显示当前登录到系统的用户信息 who命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前登录到系统的用户信息 who命令 使用指南
42 1
|
25天前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 显示目前登入系统的用户信息 w命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示目前登入系统的用户信息 w命令 使用指南
42 2
|
25天前
|
存储 Unix Shell
【Shell 命令集合 系统管理 】⭐⭐Linux 显示系统的基本信息 uname命令 使用指南
【Shell 命令集合 系统管理 】⭐⭐Linux 显示系统的基本信息 uname命令 使用指南
32 1
|
25天前
|
存储 Shell Linux
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
30 1
|
25天前
|
搜索推荐 Shell Linux
【Shell 命令集合 系统管理 】Linux 管理用户配置文件 userconf命令 使用指南
【Shell 命令集合 系统管理 】Linux 管理用户配置文件 userconf命令 使用指南
31 2
|
25天前
|
Shell Linux 数据库
【Shell 命令集合 系统管理 】Linux 创建新用户的命令 useradd命令 使用指南
【Shell 命令集合 系统管理 】Linux 创建新用户的命令 useradd命令 使用指南
42 1