laziness, impatience, and hubris PerlMonks

### Re^3: Telnet Output

by jmutton (Initiate)
 on Jan 01, 2014 at 22:46 UTC ( #1068878=note: print w/replies, xml ) Need Help??

in reply to Re^2: Telnet Output

```my %snr;
while ( my \$line = shift @lines ) {
chomp \$line;
# (US0,--) 0.1 dB
if ( \$line =~ m/SNR Margin:\s*(\d+)\s+(\d+)\s*\(US0,--\) 0.1 dB/ )
+ {
( \$snr{us0} ) = ( \$1 );
}
# (US1,DS1) 0.1 dB
if ( \$line =~ m/SNR Margin:\s*(\d+)\s+(\d+)\s*\(US1,DS1\) 0.1 dB/
+) {
( \$snr{us1}, \$snr{ds1} ) = ( \$1, \$2 );
}
# (US2,DS2) 0.1 dB
if ( \$line =~ m/SNR Margin:\s*(\d+)\s+(\d+)\s*\(US2,DS2\) 0.1 dB/
+) {
( \$snr{us2}, \$snr{ds2} ) = ( \$1, \$2 );
}
# (US3,DS3) 0.1 dB
if ( \$line =~ m/SNR Margin:\s*(\d+)\s+(\d+)\s*\(US3,DS3\) 0.1 dB/
+) {
( \$snr{us3}, \$snr{ds3} ) = ( \$1, \$2 );
}
# (US4,DS4) 0.1 dB
if ( \$line =~ m/SNR Margin:\s*(\d+)\s+(\d+)\s*\(US4,DS4\) 0.1 dB/
+) {
( \$snr{us4}, \$snr{ds4} ) = ( \$1, \$2 );
}
}

print q{US0:}, \$snr{us0}, qq{\n};
print q{US1:}, \$snr{us1}, q{ }, q{DS1:}, \$snr{ds1}, qq{\n};
print q{US2:}, \$snr{us2}, q{ }, q{DS2:}, \$snr{ds2}, qq{\n};
print q{US3:}, \$snr{us3}, q{ }, q{DS3:}, \$snr{ds3}, qq{\n};
print q{US4:}, \$snr{us4}, q{ }, q{DS4:}, \$snr{ds4}, qq{\n};
Thats what I've managed to come up with. But I need some sort of checking as some of the SNRs will report 0 or N/A. Need it to report 0 instead of N/A.

Create A New User
Node Status?
node history
Node Type: note [id://1068878]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others rifling through the Monastery: (5)
As of 2017-11-23 01:01 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
In order to be able to say "I know Perl", you must have:

Results (327 votes). Check out past polls.

Notices?