一、需求说明

  需要统计某目录下的文件数量,事实上统计目录下文件数量只需要一条命令即可完成,写成shell脚本只是方便使用和展示。另外我们以后还可以在此脚本上进行扩展,统计指定类型的文件数量,指定文件前缀的文件数量等等。

二、脚本内容

#!/bin/bash
#script name:
#author: 524627027@qq.com
#version: v1
#decription: 此脚本用于统计指定目录下文件及其子目录数量#参数定义
workdir=$(cd $(dirname $0); pwd)
inputdir=""
filesum=0
dirsum=0#输入目录参数
read -p "请输入需要统计文件和子目录数量的目录(绝对路径):" inputdir
#判断输入的目录
if  [ ! -n "$inputdir" ] ;then#输入为空时检查统计当前目录下文件数量echo "未输入目录,统计当前目录下的文件数量"filesum=`ls -lR $workdir | grep "^-"| wc -l`dirsum=`ls -lR $workdir | grep "^d"| wc -l`#输出展示结果echo -e "当前目录下文件数量为:\e[1;32m $filesum \e[0m ,子目录数量为:\e[1;32m $dirsum \e[0m "
elseif [ -d "$inputdir" ]; thenfilesum=`ls -lR $inputdir | grep "^-"| wc -l`dirsum=`ls -lR $inputdir | grep "^d"| wc -l`#输出展示结果echo -e "$inputdir 此目录下文件数量为:\e[1;32m $filesum \e[0m ,子目录数量为:\e[1;32m $dirsum \e[0m "elseecho -e "\e[1;31m 输入的目录不存在,请输入已存在的正确目录! \e[0m"fi
fi

三、使用示例

1、统计当前目录下文件数量

2、统计指定目录下文件数量

3、目录输入错误时的提示

SHELL脚本之统计目录下文件及子目录数量相关推荐

  1. linux shell脚本 删除指定目录下文件夹(可指定文件夹名、时间)

    情景:需要删除以201812开头的.6天前修改的文件夹(文件夹里包含文件).鼓捣了好一会,开始用find /home/users/niu/test/log/ -name '201812*' -type ...

  2. Linux命令:ls、grep、wc统计目录下文件及文件夹的个数。

    统计当前目录下文件的个数(不包括目录) 1 $ ls -l | grep "^-" | wc -l 统计当前目录下文件的个数(包括子目录) 1 $ ls -lR| grep &qu ...

  3. linux 统计命令执行后的行数或者统计目录下文件数目

    ls |wc 是统计你这个目录下的文件数目. ls |wc -l是输出第一个结果即31即文件的数目. 转载于:https://www.cnblogs.com/apple2016/p/6956814.h ...

  4. Linux统计目录下文件个数及代码行数

    1. 统计当前目录下,php文件数量 find ./ -name "*.php" | wc -l 2. 统计当前目录下所有php文件代码行数 find ./ -name " ...

  5. python遍历子目录_用python遍历目录下文件(包括子目录) | 求索阁

    #coding=gbk """ 实现服务器资源data文本文件加密 """ __author__ = 'lc' import os impo ...

  6. 在linux系统环境中 常用的关机命令,Linux常用基础命令整理:关机命令、查看目录下文件命令等...

    整理了一些Linux常用基础命令,欢迎指正. 首先记住四个热键,学会这四个键,收益一辈子. Tab按键---命令补齐功能 Ctrl+c按键---停掉正在运行的程序 Ctrl+d按键---相当于exit ...

  7. linux 检查权限,检查目录下 文件的权限-linux shell脚本,

    检查目录下 文件的权限-linux shell脚本, #!/bin/bash #History: #2019/07/23    Fsq #This Program will check Permiss ...

  8. php定时删除目录,shell定时删除指定目录下的文件

    contab -e 10 */12 * * * sh /usr/local/apache2/htdocs/cakephp/ebook/webroot/php/delete_big_log.sh 代码: ...

  9. shell脚本 -d 是目录文件,那么-e,-f分别是什么?还有! -e这又是什么意思呢?

    shell脚本 -d 是目录文件,那么-e,-f分别是什么?还有"! -e"这又是什么意思呢? -e filename 如果 filename存在,则为真 -d filename ...

最新文章

  1. python检查_python设置检查点简单实现
  2. python猜单词游戏_磁盘空间不足。
  3. 二十九、Pyspider爬取v2Ex网的python帖子
  4. ODBC数据源选项卡中的系统DNS,用户DNS和文件DNS
  5. MFC SendMessage()函数传递字符串
  6. What is 测试金字塔?
  7. php输出json到表格,PHP中把数据库查询结果输出为json格式
  8. YUI事件体系之Y.Do
  9. PC版微信,也终于上线了这个超赞的功能
  10. php+求日期,PHP 日期转换
  11. DB2 9 运用开拓(733 测验)认证指南,第 4 部门: 嵌入式 SQL 编程(4)
  12. ceph对象存储ceph-deploy部署记录
  13. 数据结构视频教程哪个好
  14. C语言指针详解(经典,非常详细)
  15. cad2020打印样式放在哪个文件夹_CAD图形打印相关问题!
  16. 爬虫-python(三) 百度搜索关键词后爬取搜索结果
  17. php对接抖音小程序担保支付/头条小程序担保支付
  18. Tomcat| 设置https端口时,8443和443区别
  19. rtl8812au linux驱动下载,RTL8812AU_linux_v4.3.20_16317_20160108
  20. USB-C显示器专用的PD协议芯片,LDR6282了解学习一下

热门文章

  1. Wireshark抓包分析TCP连接、发送数据与断开过程
  2. 跑cyclegan时遇到了ConnectionError: HTTPConnectionPool(host=‘localhost‘, port=8097): Max retries exceeded
  3. Keil 编译 的内存容量
  4. skyline 系列 2 - 安装和使用
  5. Tsu,Tco,Th,Tpd的概念
  6. sqlplus 便利设置
  7. 编译原理实验-LL1语法分析器(自动生成First集、Follow集求法)java实现
  8. 黑马旅游网项目详细思路和完整代码整理 -附源码
  9. 用go 语言 实现一个密码生成工具
  10. STM32 网页服务器 LWIP websever ajax实时刷新 (一)