With youre shorting it works now as I wanted it to do.
for ( $sysDescr ) { s/$prefixSysDescr|$prefixSnmpWalk/$hostName$TAB/ && do { $OutputLine = $_; last; }; # substitute some prefixes $OutputLine = $OutputLine . $SPACE . $_; } # process output
If I run the script with 3 hostnames, it produces now the following output (the IBM machine produces normally an output over a couple of lines):
$ perl -w getSysDescr.pl 82 >>omServer1 Sun SNMP Agent, Ultra-80 Pause in (main). Go [y|Y]; Quit [q|Q]: y 82 >> omServer2 IBM PowerPC CHRP Computer Machine Type: 0x0800004c Pr +ocessor id: 00C9FC8A4C00 Base Operating System Runtime AIX version: 0 +5.03.0000.0060 TCP/IP Client Support version: 05.03.0000.0063 Pause in (main). Go[y|Y]; Quit [q|Q]: y 82 >>omServer3 No response arrived before timeout. Pause in (main). Go [y|Y]; Quit [q|Q]:q
Nevertheless I'm still interested why now the use of the variable $prefixSnmpWalk works.
Beside:never mind my avoiding the if-clause. In this case I try to avoid an if-then-elseif-elseif .... I prefer select-case-else-endselect and substitute it with the for-loop
In reply to Re^2: His strangeness regex
by o_chfa
in thread His strangeness regex
by o_chfa
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |