Thread Ausgabe von mpstat um Uhrzeit erweitern (10 answers)
Opened by Gast at 2008-07-15 15:48

Linuxer
 2008-07-16 19:29
#112215 #112215
User since
2006-01-27
3890 Artikel
HausmeisterIn

user image
Du kannst doch zeilenweise aus einer Pipe lesen?

Mangels eines mpstat auf dem System hier, muss ich mit einem Workaround arbeiten:

Code: (dl )
1
2
mpstat.pl
--8<--
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/usr/bin/perl
# vim: set ts=4 sw=4 et sta:
use strict;
use warnings;


open my $pipe, './mpstat.sh |' or die "Pipe failed: $!\n";

while ( my $line = <$pipe> ) {

    my $time = localtime;

    local $, = ' ';
    print $time, $line;
}

close $pipe or die "Pipe failed: $!\n";
Code: (dl )
1
2
3
4
5
6
7
8
mpstat.sh
--8<--
#!/bin/bash

for x in 1 2 3; do
echo "Wert $x"
sleep 1
done


Ausgabe:
Code: (dl )
1
2
3
Wed Jul 16 17:29:06 2008 Wert 1
Wed Jul 16 17:29:07 2008 Wert 2
Wed Jul 16 17:29:08 2008 Wert 3


Wo ist Dein Problem genau?

update:
und hier mit vmstat (danke an nepos für seinen Beitrag):

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/usr/bin/perl
# vi:ts=4 sw=4 et:
use strict;
use warnings;

my $cmd = '/usr/bin/vmstat 1 3';

$| = 1;

open my $pipe, '-|', $cmd or die "$cmd: can't read from pipe: $!\n";

while ( my $line = <$pipe> ) {
    my $time = localtime;

    local $, = ' '; # Leerzeichen explizit angegeben (wg. Highlighting); war $"
    print $time, $line;
}

close $pipe;


[edit]Code angepasst wg. Forum-Highlighting[/edit]
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Ausgabe von mpstat um Uhrzeit erweitern