System-Info

 view release on metacpan or  search on metacpan

lib/System/Info/AIX.pm  view on Meta::CPAN


sub prepare_os {
    my $self = shift;

    my $os = $self->_os;
    # First try the format used since 5.3ML05
    chomp ($os = `oslevel -s`);
    if ($os =~ m/^(\d+)-(\d+)-(\d+)-(\d+)$/ && $1 >= 5300) {
	# 6100-09-03-1415 = AIX 6.1.0.0 TL09 SP03 (release 2014, week 15)
	# Which will show as AIX 6.1.0.0/TL09-03
	$os = join (".", split m// => $1) . "/TL$2-$3";
	}
    else {
	chomp ($os = `oslevel -r`);
	# 5300-12 = AIX 5.3.0.0/ML12
	if ($os =~ m/^(\d+)-(\d+)$/) {
	    $os = join (".", split // => $1) . "/ML$2";
	    }
	else {
	    chomp ($os = `oslevel`);
	    # 5.3.0.0 = AIX 5.3.0.0

lib/System/Info/Darwin.pm  view on Meta::CPAN

    return $self;
    } # prepare_sysinfo

# System::Info::BSD.pm only uses hw
sub __get_sysctl {
    my $sysctl_cmd = -x "/sbin/sysctl" ? "/sbin/sysctl" : "sysctl";
    chomp (my @sysctl = do {
	local $^W = 0;
	`$sysctl_cmd -a 2>/dev/null`;
	});
    my %sysctl = map { split m/\s*[:=]\s*/, $_, 2 } grep m/[:=]/ => @sysctl;
    return \%sysctl;
    } # __get_sysctl

sub __get_system_profiler {
    my $system_profiler_output = do {
	local $^W = 0;
	`/usr/sbin/system_profiler -detailLevel mini SPHardwareDataType SPSoftwareDataType 2>&1`;
	} or return;

    # From RT#97441

lib/System/Info/Solaris.pm  view on Meta::CPAN

Use os-specific tools to find out more about the operating system.

=cut

sub prepare_os {
    my $self = shift;

    my ($osn, $osv) = ($self->_osname, $self->_osvers);
    if ($^O =~ /solaris|sunos/i && $osv > 5) {
	$osn = "Solaris";
	$osv = "2." . (split m/\./ => $osv, 2)[1];
	}
    $self->{__os} = join " - ", $osn, $osv;
    } # prepare_os

1;

__END__

=head1 COPYRIGHT AND LICENSE

t/sysinfo_proc.t  view on Meta::CPAN

    my $data  = shift or die "No content for tied filehandle!";
    bless \$data, $class;
    }

sub READLINE {
    my $buffer = shift;
    length $$buffer or return;
    $$buffer =~ s/[ \t\r\xa0]+/ /g;
    $$buffer =~ s/ \n/\n/g;
    if (wantarray) {
	my @list = map "$_\n" => split m/\n/, $$buffer;
	$$buffer = "";
	return @list;
	}

    $$buffer =~ s/^(.*\n?)// and return $1;
    }

1;



( run in 0.998 second using v1.01-cache-2.11-cpan-5511b514fd6 )