Hi all,
I'm using the Net::Telnet module to automate some of the more menial
tasks I have to deal with every so often. Part of the task requires
parsing a stream of data from the device I'm telnetting to (A Marconi
ASX-200 to be exact) ... I've successfully set up the telnet, logged
in, and executed the proper commands. Now, however, I need to retrieve
data from the device. I can submit the command and use getline() to
retrieve lines, one at a time, and parse it. However, there are
"hidden" characters here and I don't know how to determine what they
are.
Here is a quick snippet of the code :
$Telnet->print("sec log sho");
while (my $line = $Telnet->getline(Timeout => 5,)) {
chomp $line;
print "--->>>>$line<<<<---\n";
}
This should simple print out each line with the arrows before and after
the line. However, upon output, I get something like the following :
--->>>> sec log sho<<<<---
UserName Application Authentication Method Profile
Name<<<<---
--------------------- ----------- ---------------------
--------------------<<<<---
myuser console password admin<<<<---
myuser http password admin<<<<---
myuser telnet password admin<<<<---
I'm guessing this is a carriage return character? I believe that's the
one that causes the output to start at the beginning of the line.
Does anyone know how I can properly remove these characters so I can
parse this information?
In addition, is using the timeout on getline the "proper" way to
determine that the input stream has stopped?
Thanks,
--
---------------------------
Jason H. Frisvold
Backbone Engineer
Penteledata Engineering
[EMAIL PROTECTED]
RedHat Certified - RHCE # 807302349405893
---------------------------
"Something mysterious is formed, born in the silent void. Waiting alone
and unmoving, it is at once still and yet in constant motion. It is the
source of all programs. I do not know its name, so I will call it the
Tao of Programming."
signature.asc
Description: This is a digitally signed message part
