按大小对文件夹中的所有文件(任意深度)进行排序

按大小对文件夹中的所有文件(任意深度)进行排序

我有一个文件夹,里面装满了文件夹和文件。我想按大小对文件进行排序(这样我就可以删除最大的文件)。

我知道如何在 Windows 资源管理器中执行此操作,但我找不到在 Mac OS X Finder 中执行此操作的方法。

Windows 2003:

  • 在 Windows 资源管理器中打开文件夹
  • 点击按钮Search
  • 保留文本字段为Search for files or folders namedContaining text
  • 点击按钮Search Now
  • 按尺寸排序

有没有办法在 Mac OS X 上的 Finder 中执行类似操作?

答案1

打开终端,cd 到您要分析的文件夹并使用此命令:

find . -type f -print0 | xargs -0 ls -l | sort -k5,5rn

它应该打印层次结构中所有文件的列表,按大小排序。至少在我的机器上是这样的,我的机器不是 Mac,而是其他一些 Unix。但原则上应该大致相同。

感谢 Richard Hoskins 修复了名称中的空格错误。这实际上是 xargs 的一个功能。请参阅本网站解释得相当清楚。上面的版本现在应该可以使用了。

编辑

以下是该命令工作原理的解释:

查找 . ==> 从当前工作目录中查找项目“。”

-type f ==> 搜索常规文件

-print0 ==> 将完整文件名打印到标准输出,以空字符而不是换行符结尾(这用于通过 xargs 处理带有换行符和空格的文件名)

xargs ==> 执行命令 xargs (对标准输入中的每一行执行一个命令)

-0 ==> 行分隔符是空字符

ls -l ==> xargs 要执行的命令。这样我们就可以获取详细信息,尤其是文件的大小。

排序 ==> 按标准对行进行排序

-k5,5rn ==> 排序字段定义,从字段 5 开始(分隔符默认为空白)并以字段 5 结束。这是 ls -l 显示中的大小字段。r 代表反向排序顺序,因此最大的文件位于顶部,n 代表数字排序顺序。

答案2

  • 打开 Finder
  • 前往文件夹
  • Finder > 文件 > 查找...
  • 改变Search选择从This Mac"folder name"
  • 点击Kind
  • 选择Other然后Size
  • 点击按钮OK
  • (我的问题是大小大于 1 MB)

答案3

假设它只是一个文件夹,请在 Finder 中打开该文件夹。然后单击“详细信息”视图按钮。最后,单击“大小”列。最大的文件将排在顶部。此外,此文件夹中的文件夹也按大小排序 - 只需单击它们旁边的三角形,您就会看到它们的文件也已排序。(不要通过双击“打开”文件夹,只需单击三角形即可展开其内容。)

截屏

如果您想进行搜索,可以按文件大小进行搜索。转到“文件”菜单,然后选择“查找”。单击以“类型”开头的列表,然后选择“其他”。从出现的列表中选择“大小”。输入您的条件并进行搜索。但是,我找不到让搜索结果显示文件大小列的方法,因此使用它来查找大于特定大小的文件比实际按大小排序更容易。

答案4

为了清理磁盘上的大文件,我更喜欢使用大视野

外观炫酷又实用

相关内容