一、基础显示选项
**-b**
功能:以字节为单位显示内存使用情况(默认单位为KB)
示例:
bash
free -b # 显示所有内存数据以字节为单位
**-k**
功能:以千字节(KB)为单位显示(默认选项)
示例:
bash
free -k # 默认输出格式(等效于不加单位参数)
**-m**
功能:以兆字节(MB)为单位显示
示例:
bash
free -m # 显示内存使用情况(如"Mem: 3729M")
**-g**
功能:以吉字节(GB)为单位显示
示例:
bash
free -g # 显示内存使用情况(如"Mem: 3.6G")
**-h**
功能:以人类可读格式自动选择单位(B/KB/MB/GB)
示例:
bash
free -h # 自动适配单位(如"Mem: 3.6G")
二、输出控制选项
**-o**
功能:不显示缓冲区(buff)和缓存(cache)的调节行
示例:
bash
free -o # 仅显示"Mem"和"Swap"的总计行
**-t**
功能:显示内存和交换区的总计行
示例:
bash
free -t # 增加"Total"行(如"Total: 39G 12G 16G")
**-s <间隔秒数>**
功能:每隔指定秒数刷新显示
示例:
bash
free -s 2 # 每2秒刷新一次
**-c <次数>**
功能:连续显示指定次数后退出
示例:
bash
free -s 2 -c 5 # 每2秒刷新,共显示5次
三、高级显示选项
**-l**
功能:显示低位和高位内存使用情况(需root权限)
示例:
bash
free -l # 显示详细内存段信息
**-si**
功能:以国际单位制(GB/MB)显示(等效于-h)
示例:
bash
free -si # 输出格式与free -h
一致
**-V**
功能:显示命令版本信息并退出
示例:
bash
free -V # 输出版本号(如"free (GNU coreutils) 8.32")
四、输出字段解析
free 命令的输出包含以下关键字段(以free -h为例):
字段 含义
Mem 物理内存使用情况
total 总物理内存量(如31G)
used 已使用内存(包含缓冲/缓存)
free 空闲物理内存(未包含缓冲/缓存)
buff/cache 缓冲区和缓存占用的内存(可回收)
available 实际可用内存(free + 可回收的buff/cache)
Swap 交换分区使用情况
五、注意事项
缓存与缓冲的误导:
used 包含缓冲/缓存,实际可用内存需通过 available 字段判断。
示例:若 free 显示 free=12G,但 available=21G,说明系统仍有足够内存。
实时性与准确性:
free 输出结果非实时,需结合 -s 或 watch 命令监控动态变化。
示例:
bash
watch -n 1 free -h # 每秒刷新一次
引用说明
基础选项与示例:
高级用法与字段解析:
完整手册可通过 man free 查看。