用perl语言写一个监控linux内存的脚本
时间: 2023-09-04 08:08:36 浏览: 179
以下是一个基本的 Perl 脚本,用于监控 Linux 系统的内存使用情况:
```perl
#!/usr/bin/perl
use strict;
use warnings;
my $meminfo_file = '/proc/meminfo';
my $total_mem;
my $free_mem;
# 读取 /proc/meminfo 文件
open(my $fh, '<', $meminfo_file) or die "Can't open $meminfo_file: $!";
while (<$fh>) {
if (/^MemTotal:\s+(\d+)\skB/) {
$total_mem = $1;
} elsif (/^MemFree:\s+(\d+)\skB/) {
$free_mem = $1;
}
}
close $fh;
# 计算内存使用率
my $used_mem = $total_mem - $free_mem;
my $used_percent = sprintf("%.2f", $used_mem / $total_mem * 100);
# 输出结果
print "Total memory: $total_mem kB\n";
print "Free memory: $free_mem kB\n";
print "Used memory: $used_mem kB ($used_percent%)\n";
```
该脚本首先打开 `/proc/meminfo` 文件并读取其中的 `MemTotal` 和 `MemFree` 行。然后,计算用于内存的总量以及空闲量,并计算内存使用率。最后,将结果打印到标准输出中。
你可以将此脚本保存为 `meminfo.pl` 并通过以下方式运行:
```
$ perl meminfo.pl
```
该脚本将输出类似以下内容的结果:
```
Total memory: 1024000 kB
Free memory: 100000 kB
Used memory: 924000 kB (90.23%)
```
阅读全文
相关推荐

















