用du -sh 可快速查看当前目录非隐藏文件和文件夹大小;如仅需普通文件,用find . -maxdepth 1 -type f -exec du -sh {} + | sort -hr;含隐藏文件时用du -sh .1 * 2>/dev/null | sort -hr。. ↩

你需要在Mac终端里快速看清当前文件夹里每个文件占了多少空间,而不是只看到目录名或一堆问号——用du命令配合格式化参数就能直接列出所有普通文件的大小,跳过子目录干扰,结果按人类可读单位显示。
用du -sh *列出当前目录下所有文件大小
这一步操作起来很简单,直接在终端里输入命令就行。
打开“终端”应用(可通过 Spotlight 搜索「终端」或前往「应用程序 → 实用工具」)。
确保你已进入目标文件夹:例如输入cd ~/Downloads后回车,再执行下一步。
输入命令:du -sh *,然后回车。
【* 会匹配当前目录下所有非隐藏的普通文件和文件夹,但不包含以.开头的隐藏项】。如果目录里有中文名或含空格的文件,该命令仍能正常工作;但如果只想看文件、不想看到文件夹,需配合其他筛选手段。
只显示文件(排除文件夹)并按大小排序
当你想聚焦于真正占用空间的独立文件,而非子目录汇总值时,这个方法能精准过滤掉所有目录项。
第一步:运行find . -maxdepth 1 -type f -exec du -sh {} +。
第二步:加上| sort -hr让结果从大到小排列:find . -maxdepth 1 -type f -exec du -sh {} + | sort -hr。
第三步:如只需前10个最大文件,末尾追加| head -n 10。
注意:-maxdepth 1确保只查当前层,-type f严格限定为普通文件,避免把文件夹当文件统计。若当前目录含大量小文件,此命令响应略慢于单纯du *,但结果更干净。
同时包含隐藏文件且去重排序
有些重要文件藏在.hidden文件里,比如.config或.cache下的配置文件,漏掉它们可能误判空间分布。
方法一:用du -sh .[^.]* *一次性覆盖隐藏与非隐藏项。
方法二:更稳妥的写法是du -sh .[^.]* * 2>/dev/null | sort -hr,其中2>/dev/null自动屏蔽权限错误提示,防止干扰有效行输出。
【. [^.]* 匹配以.开头但第二个字符不是.的所有项,即避开..而捕获.git、.DS_Store等真实隐藏文件】。单独用.*会误匹配..父目录,导致du报错或重复统计。











