温馨提示×

Linux文件大小查看工具有哪些

小樊
55
2025-10-12 05:42:25
栏目: 智能运维

Linux系统查看文件大小的常用工具及用法

1. ls命令(最常用的文件大小查看工具)

ls(List)是Linux中最基础的文件列表命令,通过添加-l(长格式)和-h(人类可读)选项,可快速查看文件的逻辑大小(内容实际字节数)及易读格式(KB、MB、GB)。

  • 基本用法ls -lh 文件名
    示例:ls -lh example.txt
    输出示例:-rw-r--r-- 1 user group 66M Apr 2 2015 example.txt
    说明:第五列(66M)即为文件大小,-h选项将字节自动转换为易读单位(如K、M、G);若省略-h,则默认以字节显示(如69206016)。
  • 注意ls -l显示的是文件的逻辑大小(内容实际占用的字节数),而非磁盘占用空间。

2. du命令(查看磁盘占用空间的首选工具)

du(Disk Usage)用于估算文件或目录在磁盘上的实际占用空间(受文件系统块大小影响,可能大于逻辑大小)。其核心优势是支持递归统计目录人类可读格式

  • 查看单个文件大小du -h 文件名
    示例:du -h example.txt
    输出示例:4.0K example.txt(表示文件占用4KB磁盘空间)。
  • 查看目录总大小du -sh 目录名
    示例:du -sh /home/user/Documents
    输出示例:1.2G /home/user/Documents-s选项汇总目录总大小,-h易读格式)。
  • 查看目录下所有文件/子目录大小du -ah 目录名
    示例:du -ah /etc
    输出示例:4.0K /etc/passwd12K /etc/group-a选项显示所有文件,包括隐藏文件)。

3. stat命令(获取文件详细元数据)

stat用于显示文件的完整元信息,包括精确的字节大小(逻辑大小)、占用块数、IO块大小、权限、时间戳等,适合需要精准数据的场景。

  • 基本用法stat 文件名
    示例:stat example.txt
    输出示例:
    File: example.txt
    Size: 69206016   Blocks: 136        IO Block: 4096   regular file
    Device: 802h/2050d   Inode: 5243072    Links: 1
    Access: (0644/-rw-r--r--)  Uid: ( 1000/ user)   Gid: ( 1000/ group)
    Access: 2025-10-01 10:00:00.000000000 +0800
    Modify: 2025-09-30 18:30:00.000000000 +0800
    Change: 2025-09-30 18:30:00.000000000 +0800
    
    说明:Size字段为文件逻辑大小(字节),Blocks为占用块数,IO Block为文件系统块大小。
  • 仅显示字节数stat -c "%s" 文件名
    示例:stat -c "%s" example.txt
    输出示例:69206016(直接输出文件逻辑大小,适合脚本处理)。

4. wc命令(统计文件字节数/行数)

wc(Word Count)主要用于统计文件的行数、单词数、字节数,其中-c选项可快速获取文件逻辑大小(字节数)。

  • 基本用法wc -c 文件名
    示例:wc -c example.txt
    输出示例:69206016 example.txt(第一个数字为字节数,后面为文件名)。
  • 注意wc -c的结果与ls -l的逻辑大小一致,但输出格式更简洁,适合脚本中提取字节数。

5. find命令结合stat(批量查看文件大小)

find用于查找文件或目录,结合-exec选项可批量执行stat命令,快速获取目录下所有文件的逻辑大小(适合批量处理场景)。

  • 基本用法find 目录名 -type f -exec stat -c "%s %n" {} \;
    示例:find /etc -type f -exec stat -c "%s %n" {} \;
    输出示例:
    1234 /etc/passwd
    5678 /etc/group
    91011 /etc/hosts
    
    说明:-type f仅查找文件(排除目录),%s为文件大小(字节),%n为文件名。

关键区别总结

工具/命令 查看内容 单位 是否递归 适用场景
ls -lh 文件逻辑大小 KB/MB/GB 快速查看单个文件大小
du -h 文件/目录磁盘占用空间 KB/MB/GB 查看目录总大小或磁盘使用情况
stat 文件逻辑大小+元数据 字节 需要精准数据的场景
wc -c 文件逻辑大小 字节 脚本中提取字节数
find + stat 批量文件逻辑大小 字节 批量处理目录下所有文件

以上工具覆盖了Linux下查看文件大小的主要需求,可根据具体场景选择使用。例如:快速查看单个文件大小用ls -lh,查看目录总大小用du -sh,需要精准字节数用stat,批量处理用find + stat

0