【Linux常用命令-不断更新】

在 Linux 系统中,查看总剩余内存常用方法。

方法 1:使用 free 命令

free 是一个常用的命令,用于显示系统的总内存、已用内存、空闲内存和交换内存。

bash 复制代码
free -h
  • -h 参数表示以易读的格式(如 GB、MB)显示内存信息。

  • 输出示例:

    复制代码
               total        used        free      shared  buff/cache   available
    Mem:          15G        5.3G        2.1G        248M        8.2G        9.5G
    Swap:         2.0G          0B        2.0G
    • total:总物理内存。
    • used:已使用的内存。
    • free:完全空闲的内存。
    • available:实际可用的内存(free + buff/cache 中可用于程序的内存)。

方法 2:使用 vmstat 命令

vmstat 是一个更通用的系统性能监控工具,也可以用来查看内存信息。

bash 复制代码
vmstat -s
  • 输出示例:

    复制代码
    16384000 total memory
    5570560 used memory
    2129920 free memory
    8388608 buffers
    • total memory:总内存。
    • free memory:完全空闲的内存。
    • bufferscached:被系统缓存的内存,这些内存可以被程序使用。

方法 3:查看 /proc/meminfo 文件

/proc/meminfo 是一个虚拟文件,包含了系统的内存信息。你可以通过 cat 命令查看其内容。

bash 复制代码
cat /proc/meminfo
  • 输出示例:

    复制代码
    MemTotal:       16384000 kB
    MemFree:         2129920 kB
    MemAvailable:    9748480 kB
    Buffers:         8388608 kB
    Cached:          8388608 kB
    • MemTotal:总物理内存(以 KB 为单位)。
    • MemFree:完全空闲的内存。
    • MemAvailable:实际可用的内存。

方法 4:使用 tophtop 命令

tophtop 是常用的系统监控工具,它们可以动态显示系统的内存使用情况。

  • 运行 tophtop,然后查看内存相关的列(如 MemSwap)。

方法 5:使用 psutil(Python 脚本)

如果你熟悉 Python,可以使用 psutil 库编写脚本来查看内存信息。

python 复制代码
import psutil

mem = psutil.virtual_memory()
print(f"Total Memory: {mem.total / (1024 ** 3):.2f} GB")
print(f"Free Memory: {mem.free / (1024 ** 3):.2f} GB")
print(f"Available Memory: {mem.available / (1024 ** 3):.2f} GB")

总结

  • 如果你只需要快速查看内存信息,推荐使用 free -h
  • 如果你需要更详细的内存信息,可以查看 /proc/meminfo 文件或使用 vmstat
  • 如果你需要实时监控,可以使用 tophtop
相关推荐
jiayong233 小时前
DevOps体系详解01-核心概念与价值
运维·devops
jiayong233 小时前
DevOps体系详解02-技术架构与工具链
运维·架构·devops
pride.li4 小时前
开发板和Linux--nfs服务挂载
linux·运维·服务器
looking_for__4 小时前
【Linux】应用层协议
linux·服务器·网络
BB_CC_DD4 小时前
Linux截图工具(ubuntu18.04+flameshot(火焰截图))
linux
云泽8085 小时前
不止是命令:Linux 高频指令实战 + 芯片架构底层逻辑
linux·运维·服务器
j_xxx404_5 小时前
Linux:基础IO
linux·运维·服务器
wdfk_prog6 小时前
[Linux]学习笔记系列 -- [drivers][i2c]i2c-dev
linux·笔记·学习
angushine7 小时前
银河麒麟V10创建用户
运维
Trouvaille ~7 小时前
【Linux】网络编程基础(二):数据封装与网络传输流程
linux·运维·服务器·网络·c++·tcp/ip·通信