free 命令示例
创始人
2024-03-02 18:27:27
0

Linux 中的 free 命令可以帮助你深入了解系统内存(RAM)的使用情况等。下面介绍如何充分利用它。

free 命令是了解系统内存(RAM)消耗情况,以及是否启用了交换的最简单方法之一。

但问题是:如何使用 free 命令? 嗯,这非常简单,不需要任何复杂的步骤。

因此,在本教程中,我将引导你使用 free 命令,并附有示例和练习题供你练习。

Linux 中如何使用 free 命令

要使用 free 或任何其他命令,最好从命令语法开始,我将从相同的开始。

以下是 free 命令的语法:

free [选项]

有多个选项可以使用,以更改 free 命令的默认行为。

现在,让我分享一些 free 命令常用的选项:

选项描述
-h通过调整 KB、GB 等数据单位,以人类可读的形式打印信息。
-s在给定的时间间隔后更新 free 输出。
-t显示系统和交换内存的总量。
-g以 GB 为单位显示数据。
-m以 MB 为单位打印信息。
-k以 KB 为单位显示输出。

但是如果执行不带选项的 free 命令会怎样呢? 你可以看到下面的内容:

这里,

  • total:表示存储总量。
  • used:显示系统已使用的存储空间。
  • free:可用于新进程的可用内存量。
  • shared:tmpfs(临时文件系统)使用的内存量。
  • buff/cache: 表示缓冲区和缓存使用的内存总和。
  • available:它估计有多少内存可用于启动新应用而无需交换。它是free 内存和可以立即使用的 buff/cache 的一部分的总和。

因此,如果你想要各种信息,只需输入不带选项的命令即可。

现在,让我们看一下 free 命令的一些示例。

1、以人类可读的形式显示信息

默认情况下,free 命令将以千字节为单位显示数据,这不是最易读的形式。

这就是 -h 选项发挥作用的地方,它以人类可读的形式(例如 KB 或 GB)打印值。

free -h

2、连续显示统计数据

一旦执行 free 命令,它只会显示执行该命令时的统计信息。例如,如果我在 12:45 执行 free 命令,那么它只会显示该时间的统计信息。

所以问题是:如何实现类似的行为,如显示实时统计数据的 htop?这不完全相同,但你可以使用 -s 标志以特定时间间隔刷新统计信息,如下所示:

free -s <秒>

例如,如果我想每秒刷新一次 free 命令,那么我将使用以下命令:

free -s 1

3、定义显示统计数据的次数

在前面的示例中,我解释了如何使用 free 命令连续显示统计信息,但你可能不希望它无休止地刷新,而只刷新几次。

为此,你可以使用 -c 标志,如下所示:

free -c <显示统计信息的次数>

假设我想查看统计数据 3 次,那么我将使用以下内容:

free -c 3

默认情况下,它将每秒刷新一次数据,但你可以使用 -s 标志来指定间隔时间:

free -c <显示统计数据的次数> -s <秒数>

例如,在这里,如果我想以 2 秒的间隔显示统计信息 3 次,那么我将使用以下命令:

free -c 3 -s 2

4、指定输出数据类型

虽然对于大多数用户来说,使用 -h 标志以人类可读的形式显示数据就可以完成工作,但是如果你想自己指定数据类型怎么办?

那么,你可以使用以下标志指定数据类型:

标志描述
--kilo-k以 KB 为单位显示内存。
--mega-m以 MB 节为单位显示内存。
--giga-g以 GB 为单位显示内存。
--tera以 TB 为单位显示内存。

你可以通过以下方式使用上述标志:

free --

例如,如果我希望以 MB 为单位显示内存统计信息,那么我将使用以下命令:

free --mega

5、获取物理内存和交换内存的总和

默认情况下,可用内存将显示物理内存和交换内存的行,但是如果你想获得它们的总和怎么办?

好吧,你可以使用 -t 标志:

free -t

练习题 ?‍?

你可以练习以下一些问题,以更好地使用 free 命令:

  • 连续打印内存统计数据 3 次,中间间隔 3 秒。
  • 以人类可读的形式获取物理内存和交换内存的总和。
  • 重定向 free 命令的输出到文本文件中。
  • 如何从 free 命令的输出中只打印一列? (提示:使用 awk 命令 并指定列号)。

如果你对这些问题有任何疑问,你可以在此处发表评论。

总结

每个命令都会以某种方式派上用场。free 命令也有这样一个被低估的场景来获取有用的信息。

? 我希望你发现本指南有用! 请让我知道你对我接下来应该介绍什么内容的想法?

(题图:DA/07440245-cdb2-43ac-94d9-c4a394ced646)


via: https://itsfoss.com/free-command/

作者:Sagar Sharma 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

快手程一笑:将力争可灵AI...
3月26日,快手科技昨日公布2024年第四季度及全年业绩,财报显示...
2025-03-26 08:51:34
不知道为什么: free(...
当出现"不知道为什么: free():无效的下一个大小(快速):"...
2025-01-12 09:31:14
不支持的错误: 无法执行此...
这个错误通常发生在使用cx_Freeze将Python脚本转换为可...
2025-01-11 19:31:49
不同机器上的Flutter...
要解决“不同机器上的Flutter Freezed生成的文件不同”...
2025-01-09 05:31:43
不使用scales=&qu...
在不使用scales="free"时,facet_wrap将根据每...
2024-12-29 08:01:45
不能进行洗涤(即不能清洗)...
是的,如果一个对象不能进行洗涤(即不能清洗),则调用free()函...
2024-12-27 05:30:24

热门资讯

“Linux 中国” 开源社区... 这是一个艰难的决定 —— 这不是调侃,而是当你真正做出改变了你十几年生活轨迹的决定时,你就会明白这个...
硬核观察 #1263 德国铁路... #1 德国铁路公司招聘 Windows for Workgroups 3.11 管理员该职位要求了解...
人工智能教程(七):Sciki... 在本系列的 上一篇文章 中,我们用 TensorFlow 构建了第一个神经网络,然后还通过 Kera...
关闭 WSL 中正在运行的 L... 以下是使用 WSL 关闭在 Windows 内运行的 Linux 系统的不同方法。你使用 WSL 在...
MX Linux 23.2 “... 最新的 MX Linux 23.2 小版本更新带来了基本的改进和新增功能。MX Linux 推出了 ...
硬核观察 #1262 网络上最... #1 网络上最古老的软件存档库之一即将关闭美国新墨西哥州立大学(NMSU)最近宣布,即将于 2024...
如何在 RHEL 上通过绑定配... 在 Linux 中,你可以根据自己的需要创建高级网络设置,如 网络绑定 Network Bondin...
Linux Matrix 消息... Matrix 用户可以升级 Fractal 6 了!Fractal 是目前 最好的 Matrix 客...
如何通过 VLC 使用字幕 使用 VLC 媒体播放器播放和管理字幕的新手指南。我是一个超级动漫迷,如果你想观看最新的剧集,那么你...
硬核观察 #1261 X 计划... #1 X 计划在奥斯汀建立内容审核总部据报道,该部门将招聘 100 名全职员工,将主要关注 CSE ...