因此,在许多情况下,我希望知道我的硬盘空间中有多少被使用,以便我知道要清除哪些文件,将其转换为其他格式,存储在其他位置(例如数据DVD),移动到另一个分区等。在这种情况下,我正在从SliTaz Linux引导介质中查看Windows分区。
在大多数情况下,我想要的是文件和文件夹大小,为此我使用基于NCurses的ncdu:
但在这种情况下,我想要一种获取匹配正则表达式的所有文件大小的方法。一个.bak文件的示例正则表达式:
.*\.bak$
在标准的Linux系统中,或使用 BusyBox,我该如何获取这些信息?
编辑:输出应该是可被脚本解析的。
-s
参数的du
呢?我现在没法确认,不过我记得du
可以显示总大小而不需要用到tail
呢。FileLight 工具让我想起了 Gnome 的磁盘使用分析器。但是,我觉得我在原帖中提到的 ncdu 应用程序的“详细视图”界面更直观一些,不过多样性也是好事 :) (我已经打开了磁盘使用分析器,让某个人从那个时髦的用户界面认为我为他修复电脑所做的工作比实际要复杂... 这招真的有效!呵呵)。 - Camilo Martindu
,因为它不支持--files0-from
,所以我安装了coreutils),所以我会接受这个答案,因为它似乎对恐怖分子文件名具有免疫力。 - Camilo Martinbrew install coreutils
命令以获取find
和du
的 GNU 变体后,该命令看起来像这样:gfind $HOME/ons -type f -regex '.*pre-commit-config.yaml' -print0 | gdu --files0-from=- -cb | sort -n
。这将在原始命令中添加一个排序,并输出文件大小(以字节为单位)以允许排序工作。 - Ashutosh Jindal