命令介绍

FREE 命令是 Linux 和 Unix 系统中一个非常有用的命令,用于显示系统的内存使用情况。它可以显示系统中可用的物理内存和交换内存,以及内核使用的缓冲区和缓存。FREE 命令提供了一种快速查看系统内存利用率的方式,对于系统管理员和开发人员来说非常有帮助。

命令格式

free 命令的基本格式为:

1
free [options]

其中:

  • options: 用于指定 FREE 命令的选项,例如 -h 以人性化的方式显示内存大小。

参数说明

FREE 命令提供了多个可选参数,下表列出了常用的参数及其说明:

选项 功能 备注
-b 以字节为单位显示内存大小 -
-c 打印次数 每隔一秒打印一次内存使用情况,后面跟数字表示总共打印几次 -
-k 以 KB 为单位显示内存大小 默认选项
-m 以 MB 为单位显示内存大小 -
-g 以 GB 为单位显示内存大小 -
-h 以人性化的方式显示内存大小 -
-t 在输出的最终结果中,输出内存和 swap 分区的总量。 -
-o 不显示系统缓冲区这一列。 -
-s 间隔秒数 根据指定的间隔时间,持续显示内存使用情况。 -

命令实例

基本用法

1.显示系统内存使用情况

1
2
3
4
[root@ubuntu2204-101 ~ 11:17:56]# free
total used free shared buff/cache available
Mem: 4017744 290132 2931984 4228 795628 3486772
Swap: 8213496 0 8213496

第一行显示的是各个列的列表头信息,各自的含义如下所示:

表头 含义 备注
total 总内存数 -
used 已经使用的内存数 -
free 空闲的内存数 -
shared 多个进程共享的内存总数 -
buffers 缓冲内存数 -

可以看到,系统的物理内存为 3923 MB,已经使用了 666 MB,空闲 283 MB。而 swap 分区总大小为 8020 MB,目前尚未使用。

2.以人性化的方式显示内存大小

1
free -h

指定显示单位

1.以字节为单位显示内存大小

1
free -b

2.以 MB 为单位显示内存大小

1
free -m

持续监控内存使用情况

1.每隔 1 秒打印一次内存使用情况,总共打印 5 次:

1
free -c 5

2.每隔 5 秒打印依次内存使用情况,知道用户按 ctrl + c 终止为止:

1
free -s 5

显示内存使用总结信息

1.只显示总计行

1
free -t 

与其他命令结合使用

1.显示特定进程的内存使用情况

2.每隔 1 秒使用 watch 命令监控内存使用情况

1
watch -n 1 free -m

通过上述实例,你可以看到 FREE 命令在显示系统内存使用情况、持续监控内存变化,以及与其他命令组合使用时的灵活应用。FREE 命令虽然简单,但在系统管理和性能监控中非常实用。