在Linux中,如何获取1MB及以上文件的文件夹总大小

Patoshi Patoshi

嗨,即时通讯正在我的服务器上做一些清理工作,我想知道我将如何获取文件文件夹的总大小,该文件大小为1mb以上,以及1mb以下。我得到了:

ls -lh | grep 'M '

但是我无法得到所有东西的总大小。

在此处输入图片说明

gniourf_gniourf

相反解析的输出ls(这被认为是非常糟糕的做法),你可以使用finddu像这样:

  • 要查找-type f当前目录和子目录中≥1M(-size +1M)的所有文件(,并获取其大小的总和:

    find . -type f -size +1M -print0 | du -sch --files0-from=- | tail -1
    
  • 类似,但不递归到子目录(-maxdepth 1):

    find . -maxdepth 1 -type f -size +1M -print0 | du -sch --files0-from=- | tail -1
    
  • 对于大小≤1M的文件:

    find . -type f -size -1M -print0 | du -sch --files0-from=- | tail -1
    find . -maxdepth 1 -type f -size -1M -print0 | du -sch --files0-from=- | tail -1
    

如果您的du支持版本支持该--files0-from选项,则此方法有效如果没有,您可以尝试以下方法:

find . -type f -size +1M -exec du -sch {} + | tail -1

但是如果文件太多,它将无法正常工作(您将得到错误的答案)!在这种情况下,您可以尝试以下方法:

find . -type f -size +1M -exec sh -c 'du -sch "$@" | tail -1' _ {} +

然后,您将有几行(希望不是太多),并且您必须自己做数学。

随着find你必须要考虑哪些文件完全控制!它的过滤可能性几乎是无止境的。

干杯!


ls -1h | grep 'M '如果您有包含字符串的文件,  您将得到错误的答案"M "而且的输出ls应由人类而非机器读取...机器还有其他更好的方式来获取此类信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Linux环境中的android eclipse中从Assests文件夹读取.mb文件的大小为1mb

如何从unix中包含60个以上文件的文件夹中删除文件?

快速获取文件夹的总大小

如何获取C#中特定文件夹的总大小?

如何获取网站上文件夹的名称

如何递归浏览文件夹并计算文件总大小?

如何使FileZilla忽略包含1000个以上文件的文件夹?

为什么文件夹大小(在属性中)与文件夹中文件/文件夹的总大小不同?

如何使用Linux Shell脚本从1-500生成大小为1mb的随机文件

Firefox-如何更改书签工具栏上文件夹中项目的字体大小?

如何找到“垃圾箱”文件夹中内容的总大小?

使用codeigniter php保护托管linux上文件夹中的文件

如何计算系统上文件/文件夹的总数?

使文件大小至少为1MB

如何在Nautilus中获取文件夹大小以包含隐藏文件(点文件)?

从具有路径目标c的所选文件夹中获取大小大于100MB的文件的列表

如何在Linux上使用SSH获取文件/文件夹的大小?

通过命令提示符获取文件和文件夹的大小(以mb为单位)?

获取文件夹或文件的大小

获取Linux服务器中文件夹的大小

(使用aws-sdk)如何查找存储在亚马逊s3中的文件夹的总大小

如何在Ruby中获取目录中文件的总大小

如何知道zip文件中的文件夹大小(Python)

Linux:如何获取嵌套文件夹中文件的路径

如何通过Windows API获取文件夹大小

如何使用rsync获取文件夹大小?

如何限制文件不大于 1MB

如何从命令行确定目录(文件夹)的总大小?

获取tmp文件夹中图像的大小