📅  最后修改于: 2023-12-03 15:11:53.082000             🧑  作者: Mango
在 Linux 系统中,我们经常需要获取磁盘的利用率以及可用空间。在本文中,我们将介绍如何使用 Shell/Bash 脚本获取磁盘的利用率。
要获取总磁盘空间,可以使用以下命令:
df -h /
该命令将返回以人类可读的格式(如 GB、MB 和 KB)显示磁盘使用情况。在上面的命令中, /
后跟相应的分区,表示需要获取该分区的磁盘空间。
输出结果示例:
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 30G 2.2G 27G 8% /
Size
:分区总大小;Used
:分区已用空间;Avail
:分区可用空间;Use%
:分区使用率。要获取磁盘利用率,可以使用以下命令:
df / | awk 'NR==2{print $5}'
该命令将从 “/” 分区获取磁盘使用率(以百分比的格式显示)。该命令中,我们使用了 awk
命令选择输出的正确行,以及选择正确的列以获取磁盘使用率。
输出结果示例:
7%
为了使代码更具可读性,我们可以将上述命令编写为一个自定义的 Shell 函数。该函数将返回磁盘使用率以及该分区的总磁盘空间。
get_disk_usage() {
local usage=$(df $1 | awk 'NR==2{print $5}')
local total=$(df $1 | awk 'NR==2{print $2}')
echo "$total $usage"
}
该函数接受一个参数,该参数指定要获取磁盘使用率和空间信息的分区。函数将返回以空格分隔的总磁盘空间和磁盘使用率。
现在,我们可以使用以下命令调用该函数,以获取磁盘使用率和空间信息:
get_disk_usage /
输出结果示例:
31457280 7%
这表明,该命令在 “/” 分区上发现了 30 GB 的总磁盘空间,其中使用了 2.2 GB 的磁盘空间(使用率为 7%)。