`
yang_min
  • 浏览: 342154 次
  • 性别: 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. **Shell**: 是一个命令行解释器,用户可以通过它向操作系统发送指令。 2. **脚本**: 由一...

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

    在遍历目录结构时,递归非常有用,因为一个目录可能包含多个子目录,每个子目录又可能有更多子目录,以此类推。下面的实例将展示如何实现这一功能。 **实例1** 在这个例子中,定义了一个名为`scandir`的函数,该...

    Shell脚本统计当前目录下目录和文件的数量

    总的来说,这个简单的Shell脚本提供了一种便捷的方法来快速了解一个目录的结构,对于日常的系统管理和维护工作非常有用。通过学习和理解这个脚本,你可以根据需要定制更复杂的文件和目录统计功能。

    shell备份文件、重命名文件、删除指定文件的3个脚本分享

    同样,它检查参数数量,进入指定目录,然后遍历所有文件。如果找到与第二个参数匹配的文件后缀,它会将文件后缀更改为第三个参数指定的后缀。 3. 删除指定文件的脚本: ```bash #!/bin/bash E_BADARGS=65 case $# ...

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

    在实际应用中,这个脚本可以适应各种情况,例如,如果你需要统计不同类型的文件数量,或者根据文件大小、时间戳等属性进行分类,只需调整`readfile`函数内部的逻辑即可。通过这种方式,你可以快速地对大量文件进行...

    Shell脚本用for循环遍历参数的方法技巧

    在Shell脚本编程中,有时候我们需要处理多个命令行参数,这时使用`for`循环来遍历这些参数就显得非常实用。本文将详细讲解如何在Shell脚本中使用`for`循环遍历参数,并介绍其中的一些小技巧。 1. **基本的参数遍历*...

    visual c++ vc 计算一个目录文件及其子目录下所有文件大小总和.zip

    这个程序的核心是遍历文件系统的功能,通过`Controller`类实现,而`Visitor`接口使得我们可以方便地扩展其他功能,如统计文件数量、按文件类型分组等。通过这种方式,代码结构清晰,易于维护和扩展。

    在指定目录查找指定后缀文件的shell脚本代码

    标题中的“在指定目录查找指定后缀文件的shell脚本代码”是指利用Unix/Linux系统中的shell脚本语言,编写一个程序来搜索特定目录及其子目录下的具有特定扩展名的文件。这种功能对于开发者来说非常实用,例如在大量源...

    linux-结构化成行成列-小文件循环合并成大文件--方便上传hadoop

    描述中提到的"文件到达门限后上传",意味着我们可以设定一个阈值,当一个目录下的小文件数量或总大小达到这个阈值时,就触发合并过程。此外,还可以设置"文件时间戳超过门限时间"的条件,即如果文件在一定时间内未...

    shell脚本可配置化备份文件夹及子文件.rar

    2. **配置文件**:为了实现可配置化,脚本通常会引用一个配置文件,其中包含要备份的文件夹路径、备份类型(全量、增量或差异)、备份目标位置、保留的备份版本数量等信息。用户可以根据自身需求修改这个配置文件。 ...

    shell脚本练习题

    此练习旨在遍历 `/var` 目录下的所有文件和子目录,并对它们进行问候,同时也统计文件数量。关键知识点包括: - 使用 `cd` 命令切换工作目录。 - 使用 `ls` 命令列出目录内容。 - 使用 `for` 循环遍历目录内容。 **...

    shell查找当前目录下大于1M的文件的三种方法分享

    - **使用`ls`和`awk`命令组合**:适用于简单的文件查找需求,但可能在文件数量较多的情况下效率较低。 - **使用`find`、`ll`和`awk`组合**:结合了`find`和`ls`的优点,适用于需要快速查找大量文件的情况。 根据...

    查询文件夹文件数量.rar

    在这个场景下,我们将探讨如何在不同的操作系统中统计文件夹内的文件数量,并提供一些相关的实用技巧。 1. **Windows系统**: 在Windows中,最直接的方法是通过命令提示符(CMD)或Windows PowerShell来实现。打开...

    查找目录下同名但不同后缀名文件的shell脚本代码

    使用`while`循环读取`/tmp/dir.txt`中的每个目录,对每个目录执行以下操作: a. **查找目录下的文件**: `find $dir -maxdepth 1 -type f > /tmp/file.txt`:在当前目录下查找所有文件(不包括子目录),并将...

    shell基础入门教程

    创建一个简单的Shell脚本,需要在文件开头指定Shell类型,例如: ```bash #!/bin/bash ``` 接着,你可以输入要执行的命令。 ### 3. 变量 在Shell中,变量用于存储数据。声明变量无需特定关键字,直接赋值即可: ```...

    Shell脚本编程1

    对于每个目录,它会递归调用自身,增加缩进,并打印出目录名后跟一个斜杠。对于文件,它直接打印文件名。使用`echo -en`来避免新行并添加指定数量的空格。 在提交实验报告时,你需要将这两个脚本(`myfind.sh`和`...

    shell通过遍历输出两个日期范围内所有日期的方法

    ### Shell脚本遍历输出两个日期范围内所有日期的方法 #### 前言 在软件开发过程中,特别是涉及大量数据处理的应用场景中,日期处理是一项常见的需求。比如统计某个时间段的数据,或者是按照时间顺序进行文件归档等...

    Shell脚本统计文件行数的8种方法

    如果需要统计一个目录下所有文件的行数,可以编写一个函数来递归遍历子目录。以下是一个示例脚本: ```bash #!/bin/bash filesCount=0 linesCount=0 function funCount() { for file in `ls $1` do if [ -d $1...

    易语言取回收站文件数量源码.zip

    通过以上步骤,我们就能编写出一个简单的程序,获取并显示回收站中的文件数量。这个过程不仅涵盖了易语言的基本语法,还涉及到API调用、结构体使用、错误处理等多个进阶主题,对于学习易语言的开发者来说是一个很好...

Global site tag (gtag.js) - Google Analytics