Thread Automatisches auslesen von Systemdaten,von denen nur bestimmte Zeilen in einer Textdatei ausgeben werden (46 answers)
Opened by guest at 2011-10-11 10:02

suresh
 2011-10-11 17:31
#153113 #153113
User since
2010-10-12
109 Artikel
BenutzerIn
[default_avatar]
Wenn ich dazu mal mein Beispiel hernehmen darf, dann würde es etwa so aussehen:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/perl 

use strict;
use warnings;

#die Inhalte der Systemfiles
my @cpuinfo = `cat /proc/cpuinfo`;
my @meminfo = `cat /proc/meminfo`;

# deine Datenstruktur
my %systeminfo = (
  "/proc/cpuinfo" => \@cpuinfo, 
  "/proc/meminfo" => \@meminfo,
);

#das ganze referenziert
my $systeminfo_ref = \%systeminfo;

open (my $writefile, '>',"systeminfo.txt") or die $!;
#Zugriff auf die CPU Informationen
foreach my $selected_cpuinfo ( @{ $systeminfo_ref->{"/proc/cpuinfo"} } ) {
  chomp($selected_cpuinfo);
  if ($selected_cpuinfo =~ m/^processor/ || $selected_cpuinfo =~ m/^cpu MHz/ ) {
    print "CPUINFO: $selected_cpuinfo\n";
    print $writefile "$selected_cpuinfo\n";
  }
}
#Zugriff auf die mem infos
foreach my $selected_meminfo ( @{ $systeminfo_ref->{"/proc/meminfo"} } ) {
  chomp($selected_meminfo);
  print "MEMINFO: $selected_meminfo\n";
  #schreibt noch alles ungefiltert nach systeminfo.txt
  print $writefile "$selected_meminfo\n";
}
close($writefile);

View full thread Automatisches auslesen von Systemdaten,von denen nur bestimmte Zeilen in einer Textdatei ausgeben werden