问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

如何通过命令行查看计算机内存使用情况?

创作时间:
作者:
@小白创作中心

如何通过命令行查看计算机内存使用情况?

引用
1
来源
1.
https://www.kdun.com/ask/1299943.html

在现代计算机系统中,内存是影响系统性能的关键因素之一。为了有效地管理和监控内存使用情况,操作系统提供了各种命令行工具。本文将详细介绍一些常用的查看内存命令,并解释它们的作用和使用方法。

free命令

free命令是Linux系统中最常用的查看内存使用情况的命令,它可以显示系统的物理内存、交换空间以及缓存的使用情况。

使用方法

free -h

输出示例

项目
总量
已用
空闲
共享
缓冲/缓存
可用
Mem
8GB
3GB
4GB
500MB
1GB
3GB
Swap
2GB
500MB
1.5GB

top命令

top命令是一个实时的系统监视工具,可以动态显示系统中各个进程的资源占用情况,包括CPU和内存使用率。

使用方法

top

输出示例

top 15:27:36 up 1 day, 2:34, 2 users, load average: 0.25, 0.30, 0.20
Tasks: 123 total, 1 running, 122 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.3 us, 1.1 sy, 0.0 ni, 96.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 8192000 total, 3256724 used, 4935276 free, 204800 buffers
KiB Swap: 2097148 total, 0 used, 2097148 free. 2560000 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1234 root 20 0 123456 34567 2345 S 0.1 0.4 0:05.23 some_process

htop命令

htoptop命令的一个增强版,提供了一个更加友好的用户界面和更多的功能。

使用方法

htop

输出示例

htop会启动一个交互式的界面,显示类似以下的信息:

 1 [task 1234] root 1 0 123456 34567 2345 S 0.1 0.4 0:05.23 some_process

vmstat命令

vmstat命令可以报告关于系统的整体性能,包括内存、CPU、I/O等。

使用方法

vmstat 1

输出示例

procs -----------memory------------swap------io-----system-------cpu-----
 r b swpd free buff cache si so bi bo in cs us sy id wa st
 1 0 0 4935276 204800 2560000 0 0 0 0 0 0 0 0 0 0 100 0 0

cat /proc/meminfo命令

cat /proc/meminfo命令直接读取Linux内核暴露的内存信息文件,提供详细的内存统计信息。

使用方法

cat /proc/meminfo

输出示例

MemTotal: 8192000 kB
MemFree: 4935276 kB
MemAvailable: 3256724 kB
Buffers: 204800 kB
Cached: 2560000 kB
SwapTotal: 2097148 kB
SwapFree: 2097148 kB
...

free -m与free -g命令

free命令可以通过添加参数来以不同的单位显示内存信息,例如以MB或GB为单位。

使用方法

free -m # 以MB为单位
free -g # 以GB为单位

输出示例(以MB为单位)

total
used
free
shared
buff/cache
available
Mem
8192
3256
4935
500
2048
Swap
2048
0
2048

df命令

虽然df命令主要用于查看磁盘空间使用情况,但它也能间接反映内存的使用情况,特别是当使用tmpfs文件系统时。

使用方法

df -h

输出示例

Filesystem Size Used Avail Use% Mounted on
udev 2.0G 0 2.0G 0% /dev
tmpfs 3.9G 1.2M 3.9G 1% /run
/dev/sda1 50G 20G 28G 42% /
tmpfs 3.9G 64M 3.8G 2% /dev/shm
tmpfs 3.9G 40M 3.8G 1% /run/user/1000

相关问答FAQs

Q1: free命令中的"available"列是什么意思?

A1: "available"列表示系统估计的可用于启动新应用程序的内存量,而不会触发交换(swap),这包括了未被使用的物理内存和可以被回收的缓存和缓冲区。

Q2: top命令中的"RES"和"VIRT"列有什么区别?

A2: "RES"列显示的是进程实际使用的物理内存大小,不包括交换空间,而"VIRT"列显示的是进程使用的虚拟内存大小,包括所有代码段、数据段和共享库,加上交换空间。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号