If I understand you, what you are looking for is a combination of $^O and several CPAN modules. Once you have the operating system name in hand, you use the functions provided by packages in the $^O::Sysinfo or Win32::SystemInfo (in the case of Windows) name space to extract the information you want.
Example:
#! /usr/local/bin/perl
use strict;
use warnings;
use Linux::SysInfo;
use Win32::SystemInfo;
my $this_system = $^O;
if ($this_system eq 'MSwin32') {
my %windata;
Win32::SystemInfo::MemoryStatus(%windata);
####
# process the results
####
} elsif ($this_system eq 'Linux') {
my %linuxdata;
%linuxdata = Linux::SysInfo::sysinfo() or die "Linux::SysInfo::sys
+info() failed";
#####
# process the results
#####
} else {
die "Undefined OS -- $this_system";
}
exit(0);
----
I Go Back to Sleep, Now.
OGB
|