递归计算,文件夹大小

protected function dir_size($dir){
        $dh = opendir($dir);             //打开目录,返回一个目录流
        $size = 0;      //初始大小为0
        while(false !== ($file = @readdir($dh))){     //循环读取目录下的文件
           if($file!=‘.‘ and $file!=‘..‘){
            $path = $dir.‘/‘.$file;     //设置目录,用于含有子目录的情况
                if(is_dir($path)){

                $size += $this->dir_size($path);  //递归调用,计算目录大小
                }elseif(is_file($path)){

                    $size += filesize($path);   //计算文件大小
                }
            }
        }
        closedir($dh);             //关闭目录流
        return $size;               //返回大小
    }

递归计算,文件夹大小

时间: 2024-10-12 18:55:30

递归计算,文件夹大小的相关文章

Linux 下统计文件夹大小及文件数量

[查看文件夹大小] # /lib 目录大小 du -sh /lib # /lib 子目录大小  du -sh /lib/*   # 查看 /lib 目录下普通文件大小 find /lib -type f | xargs ls -la | awk -F ' ' 'BEGIN{sum=0} {sum+=$5} END{printf "%d bytes\n", sum}' [统计文件数量] # 查看 /lib 目录的总文件数(包含7种文件类型.包含 /lib 目录自身) find /lib 

Linux下查看文件和文件夹大小

 当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择. df可以查看一级文件夹大小.使用比例.档案系统及其挂入点,但对文件却无能为力.    du可以查看文件及文件夹的大小. 两者配合使用,非常有效.比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结. 下面分别简要介绍 df命令可以显示目前所有文件系统的可用空间及使用情形,请看下列这个例子: 以下是代码片段: [[email protected] ~]$ df -hFilesyste

Linux下查看文件和文件夹大小(转)

当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择. df可以查看一级文件夹大小.使用比例.档案系统及其挂入点,但对文件却无能为力.    du可以查看文件及文件夹的大小. 两者配合使用,非常有效.比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结. 下面分别简要介绍 df命令可以显示目前所有文件系统的可用空间及使用情形,请看下列这个例子: 以下是代码片段: [[email protected] ~]$ df -hFilesystem

Linux下查看文件和文件夹大小的df和du命令

当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择. df可以查看一级文件夹大小.使用比例.档案系统及其挂入点,但对文件却无能为力. du可以查看文件及文件夹的大小. 两者配合使用,非常有效.比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结. 下面分别简要介绍 df命令可以显示目前所有文件系统的可用空间及使用情形,请看下列这个例子: 以下是代码片段: [yayug@yayu ~]$ df -h Filesystem        

ios 得到文件夹大小 进率是1000

- (CGFloat)folderSizeAtPath:(NSString *) folderPath { NSFileManager * manager = [NSFileManager defaultManager]; if (![manager fileExistsAtPath:folderPath]) { return 0; } NSEnumerator * childFilesEnumerator = [[manager subpathsAtPath:folderPath] objec

Linux查看一个文件夹大小

1.Linux查看一个文件夹大小: du -sh /home/yangkun [[email protected] bin]$ du -sh /home/yangkun/ 164M /home/yangkun/ 2.Linux查看某个目录下所有文件的大小:du -h /home/yangkun [[email protected] bin]$ du -h /home/yangkun/ 4.0K /home/yangkun/.config/abrt 8.0K /home/yangkun/.conf

清除缓存,,计算文件夹大小

#import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // //    NSLog(@"缓存文件大小为%@",[NSString stringWithFormat:@"%0.2fM",[self folderSizeAtPath:[N

C#读取文件夹大小

今天需要做一个读取文件夹大小的功能,为了避免遍历文件夹下所有文件并求出总大小,找到如下的好方法: 首先要在项目中引用一个COM组件:Microsoft Scripting Runtime,这个在Reference中搜索可以找到.然后在代码中using Scripting名称空间.就可以开始使用了.代码如下: 1 FileSystemObject fsObj = new FileSystemObject(); 2 double dirSize = fsObj.GetFolde(tbxSrcDir.

PHP 查看文件夹大小、复制文件夹、删除文件夹

PHP虽然提供了 filesize.copy.unlink 等文件操作的函数,但是没有提供 dirsize.copydir.rmdirs 等文件夹操作的函数(rmdir也只能删除空目录).所以只能手动编写这些函数,主要的技巧是通过递归将问题逐层分解,直到分解成可以直接解决的最小子问题. ====================查看文件夹大小===================== 由于文件夹是没有大小的,平常所说的文件夹尺寸准确的说应该是文件夹中所有文件的总大小.所以只需要将文件夹逐层查找,统