#include

#include

#include

#include

#include

#define MAX 1024

/* get_file_count函数的参数是一个路径,表示目录树的根。

* 该函数返回参数指定目录下所有普通文件的数目。

*/

int get_file_count(char *root)

{

DIR * dir;

struct dirent * ptr;

int total = 0;/* 文件总数 */

char path[MAX];

dir = opendir(root); /* 打开目录 */

if(dir == NULL){

perror("fail to open dir");

exit(1);

}

errno = 0;

while((ptr = readdir(dir)) != NULL){ /* 顺序读取每一个目录项 */

/* 跳过".."和"."两个目录 */

if(strcmp(ptr->d_name,".") == 0 || strcmp(ptr->d_name,"..") == 0)

continue;

if(ptr->d_type == DT_DIR){ /* 如果是目录,则递归调用get_file_count函

数 */

sprintf(path, "%s/%s", root, ptr->d_name);

total += get_file_count(path);

}

if(ptr->d_type == DT_REG) /* 如果是普通文件,则总数递增 */

total++;

}

if(errno != 0){ /* 如果errno是0,则说明目录中目录项已经全部读完 */

perror("fail to read dir");

exit(1);

}

closedir(dir); /* 注意一定要关闭目录 */

return total; /* 返回普通文件数 */

}

int main(int argc, char * argv[])

{

int total;

if(argc != 2){ /* 命令行参数错误 */

printf("wrong usage\n");

exit(1);

}

total = get_file_count(argv[1]); /* 得到文件数目 */

printf("%s has %d files\n", argv[1], total);

return 0;

}

linux 递归查看文件个数,Linux下递归读取文件数量相关推荐

  1. 如何在linux下查看cpu个数,linux如何查看cpu个数

    linux查看cpu个数!用什么方法好呢?下面由学习啦小编给你做出详细的linux查看cpu个数方法介绍!希望对你有帮助! linux查看cpu个数方法一 1查看物理cpu个数 grep 'physi ...

  2. Linux拓展之查找指定目录下的最大文件

    概述 有时候我们需要查找指定目录下的最大文件,通常说的指定目录包括该目录下的所有文件和子目录下的所有文件.如下是几种能查找最大文件的方法. 方法一 查找指定目录下的最大文件,但不包括所有子目录,只包括 ...

  3. Linux命令查看子进程命令,Linux基础命令——查看进程命令

    linux是一个 多进程   多用户的操作系统 ps(显示当前进程的状态) ps -ef  查看当前linux 进程 ps -ef | grep 'mysqld'  过滤mysql的进程 (grep  ...

  4. Linux端口查看及常见Linux端口说明

    Linux端口查看及常见Linux端口说明 现在各行业对服务器安全管理特别严格,不管是内网服务还是公网对外开放端口,都要经过严格的安全扫描. 常见linux服务器端口启用查询命令: 该命令可列出系统正 ...

  5. U盘在Ubuntu20.04下只能读取文件不能向U盘复制文件

    背景 U盘在Ubuntu20.04下只能读取文件不能向该U盘复制文件,该U盘在其余电脑上一点问题不存在. Ubuntu系统插入其余U盘也能正确读取,只对该U盘无法处理. 处理过程 在CSDN中找了许多 ...

  6. java读取文件的方法是_Java读取文件方法大全

    Java读取文件方法大全 2011/11/25 9:18:42  tohsj0806  http://tohsj0806.iteye.com  我要评论(0) 摘要:文章来源:http://www.c ...

  7. php文件读取文件内容,PHP文件系统函数-读取文件内容几种方式

    介绍几种php获取文件内容的方式 介绍读取文件的方式之前,我们先看一下打开文件资源和关闭资源 名字资源绑定到一个流 - fopen 关闭一个已打开的文件指针 - fclose $handle1 = f ...

  8. c语言读取文件函数,C语言文件操作详细分析:读取文件(fread函数使用)

    C语言文件操作详细分析:读取文件(fread函数使用) 这里详细介绍了C语言读取文件的函数fread的使用说明,参照了MSDN的说明,同时加入自己的经验让大家学的更加明白. C语言读取文件函数frea ...

  9. java 读取1m文件_java的FileInputStream类读取文件

    package net.csdn.InputStream; import java.io.File; import java.io.FileInputStream; import java.io.Fi ...

  10. php 读取文件自身内容,与读取文件输出内容

    一,读取文件 先解释一下,什么是读取文件本身,什么叫读取文件输入内容.举个例子test.php里面的内容<?php echo "test"; ?> 1,读取文件本身就是 ...

最新文章

  1. ‘聪明的搜索算法’ A*算法
  2. Github标星2w+,热榜第一,如何用Python实现所有算法
  3. java中exec命令,使用Java中的Runtime.exec()執行Windows命令
  4. Python 线性回归
  5. web.config配置数据库连接
  6. 马哥学习李洋个人笔记之-----正则表达式
  7. 使用git在本地电脑与远程GitHub/gitlub库中clone别人的github上的远程仓库代码,找资源
  8. azure云数据库_使用Azure SQL数据库构建ASP.NET应用
  9. 移动APP开发的五个重要步骤
  10. 《剑指offer》面试题5———从尾到头打印链表(C++ 实现)
  11. csol永恒python怎样施展技能_pycharm辅助学习使用debug功能
  12. 【论文解读】VDN( Variational Denoising Network )变分去噪网络
  13. HTTP请求详细过程
  14. 关于网站中Logo部分的写法
  15. ultracompare中文乱码解决方法
  16. 贷款等额本金与等额本息还款计算器python3实现
  17. mysql基础之多表练习题
  18. win10注册表损坏开机蓝屏修复
  19. Oracle数据库update语句用法,多表批量更新对应的字段值
  20. 开发技术-git修改用户名和邮箱地址

热门文章

  1. 关于信道利用率的总结与一道习题的最终解释
  2. keras: 用预训练的模型提取特征
  3. TensorFlow 中 tf.app.flags.FLAGS 的用法介绍
  4. 我是怎么定义微服务平台?
  5. Ubuntu16.10上安装NodeJS6.9.2
  6. 自动化运维python学习笔记一
  7. C# UrlEncoding
  8. c++ queue类
  9. Eclipse调试提示:Breakpoint attribute problem: installation failed
  10. MySQL5.7之开启远程连接