`
yang_min
  • 浏览: 338479 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

一个简单的遍历文件目录下文件类型数量的shell

 
阅读更多
#!/bin/bash  
txt_count=0
xml_count=0
map_count=0
other_count=0

DIRECTORY=$1
if [ "`ls -A $DIRECTORY`" = "" ]; then
  echo "$DIRECTORY is empty"
else
  echo "$DIRECTORY is not empty"
fi

    for file in ` ls $DIRECTORY `
    do
        if [ -f $DIRECTORY"/"$file ]
        then
        fileType=${file##*.}
        #后缀名大小写兼容,统一转换为小写进行判断
        fileType=$(echo $fileType | tr '[A-Z]' '[a-z]')
                        if [ "$fileType" = "txt" ];
                         then
                          txt_count=$(($txt_count+1))
                        elif  [ "$fileType" = "xml" ];
                         then
                          xml_count=$(($xml_count+1))
                        elif  [ "$fileType" = "map" ];
                         then
                          map_count=$(($map_count+1))
                        else
                          other_count=$(($other_count+1))
                        fi
                fi
    done
echo 'txt file count:'$txt_count
echo 'xml file count:'$xml_count
echo 'map file count:'$map_count
echo 'other file count:'$other_count

 

分享到:
评论

相关推荐

    shell脚本递归遍历目录及子目录的例子分享

    用shell写的递归遍历目录的脚本,脚本实现递归遍历指定目录,打印目录下的文件名。 实例1: 代码如下:#!/bin/shfunction scandir() { local cur_dir parent_dir workdir workdir=$1 cd ${workdir} if [ ${...

    利用shell脚本遍历文件夹内所有的文件并作整理统计的方法

    今天小编就为大家分享一篇利用shell脚本遍历文件夹内所有的文件并作整理统计的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    精通Windows.API-函数、接口、编程实例.pdf

    4.3.5 查找文件、遍历指定目录下的文件和子目录 100 4.3.6 递归遍历目录树 103 4.3.7 获取、设置文件属性和时间 105 4.4 内存映射文件 110 4.4.1 使用Mapping File提高文件读写的效率 110 4.4.2 通过...

    蔡氏电路matlab仿真代码-bash_interview_questions:bashshell面试问题

    例如,有一个不能打开的1000K行的文件,分为10个文件(或任意数量的文件)。 具有预定义的文件名(可以使用awk)。 编写一个循环,遍历变量声明的一系列数字。 for x in "$i"..."$j"示例 [[ :up_arrow: ]] Shell命令...

    精通WindowsAPI 函数 接口 编程实例

    4.3.5 查找文件、遍历指定目录下的文件和子目录 100 4.3.6 递归遍历目录树 103 4.3.7 获取、设置文件属性和时间 105 4.4 内存映射文件 110 4.4.1 使用Mapping File提高文件读写的效率 110 4.4.2 通过...

    python cookbook(第3版)

    2.19 实现一个简单的递归下降分析器 2.20 字节字符串上的字符串操作 第三章:数字日期和时间 3.1 数字的四舍五入 3.2 执行精确的浮点数运算 3.3 数字的格式化输出 3.4 二八十六进制整数 3.5 字节到大整数的...

    C 开发金典

    配书光盘Readme文件 C 语言通用范例开发金典 第1章 数据结构. 1 1.1 数组和字符串 2 1.1.1 一维数组的倒置 2 范例1-1 一维数组的倒置 2 ∷相关函数:fun函数 1.1.2 一维数组应用 3 范例1-2 一维...

    C语言通用范例开发金典.part2.rar

    ∷相关函数:ShellSort函数 1.5.7 冒泡排序 243 范例1-83 冒泡排序 243 ∷相关函数:bubble_sort函数 1.5.8 一趟快速排序 246 范例1-84 一趟快速排序 246 ∷相关函数:QSort函数 1.5.9 一趟快速排序的改进...

    C语言通用范例开发金典.part1.rar

    ∷相关函数:ShellSort函数 1.5.7 冒泡排序 243 范例1-83 冒泡排序 243 ∷相关函数:bubble_sort函数 1.5.8 一趟快速排序 246 范例1-84 一趟快速排序 246 ∷相关函数:QSort函数 1.5.9 一趟快速排序的改进...

    simple-file-system:用C ++编写的模拟文件系统,可在讲师提供的外壳中运行,并于2017年秋季为操作系统类编写

    要读取超级块,我们将调用read(0,data)读取第一个块中的数据,然后将该数据指针强制转换为Block并集。 然后,我们可以通过“超级”成员读取超级块字段。 要遍历所有inode,我们将首先从SuperBlock中读取inode的...

    内存管理内存管理内存管理

    不过,即使是在这样一个简单的计算机中,您也会有问题,尤其是当您不知道程序的每个部分将需要多少内存时。如果您的空间有限,而内存需求是变化的,那么您需要一些方法来满足这些需求: 确定您是否有足够的内存...

Global site tag (gtag.js) - Google Analytics