Войти

Показать полную графическую версию : perl regex не получается сделать :(


lcat
06-06-2004, 05:19
воот сообственно миниатюрная программа.
но что то с сравнение, может кто то покажет как оно должно быть.

#!/usr/bin/perl -w
use strict;

my @anal=`/sbin/ifconfig eth0`;
$anal[6] =~ /\.+:(\d)+\s\.+:(\d)+\s\.+/;
print "You have already received *: int($1/10816) Mb\n";
print "You have already sent * * *: int($2/10816) Mb\n";

может не у всех nix стоит.

eth0 * * *Link encap:Ethernet *HWaddr 00:0C:6E:AF:F4:1E
* * * * *inet addr:192.168.0.2 *Bcast:192.168.0.255 *Mask:255.255.255.0
* * * * *UP BROADCAST RUNNING MULTICAST *MTU:1500 *Metric:1
* * * * *RX packets:3926966 errors:0 dropped:0 overruns:0 frame:0
* * * * *TX packets:6315106 errors:0 dropped:3 overruns:0 carrier:0
* * * * *collisions:0 txqueuelen:100
* * * * *RX bytes:43817572 (41.7 Mb) *TX bytes:1318266805 (1257.1 Mb)
* * * * *Interrupt:5 Base address:0x9800


Исправлено: Prisoner, 5:21 6-06-2004

DAnG
07-06-2004, 06:04
можно так:

$anal[6] =~/.+:(\d+)\s.+:(\d+)\s.+/;
print "You have already received  : ",int($1/10816)," Mb\n";
print "You have already sent      : ",int($2/10816)," Mb\n";

lcat
07-06-2004, 06:44
DAnG :up:
СПАСИБО :), ничего не остается как развести руками




© OSzone.net 2001-2012