Anonymous Monk has asked for the wisdom of the Perl Monks concerning the following question:
I'm using Net::Telnet to communicate with some network devices and I wish to store the entire conversation between my script and the device in a database.
Net::Telnet permits this by either specifying a file to write the log to or by passing a filehandle to an already open file.
e.g:
$telnet->input_log("/tmp/filename.tmp");
$fh=new FileHandle;
$fh->open(">/tmp/filename.tmp");
$telnet->input_log($fh);
In order to save the log using this method I have to write the log to disk, then read it back into a variable, then write it to the db.
My question is, is there anyway of creating a filehandle, which doesn't write to a file, but buffers the data written to it, which I can retrieve at the end of the operation..
e.g:
my $log=""; my $fh=new VFileHandle; $fh->open(); #do stuff $log=$fh->close(); ##write the $log var to the database.I've tried using the FileHandle module but can't work out what file/device to open to make this work.
If I make the filehandle object without opening a file I get a 'writing to closed filehandle' error..
Any help appreciated !
Thanks,
James
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Virtual Filehandles..
by diotalevi (Canon) on Nov 18, 2004 at 20:34 UTC | |
by NetWallah (Canon) on Nov 18, 2004 at 20:45 UTC | |
by Anonymous Monk on Nov 18, 2004 at 21:02 UTC | |
by diotalevi (Canon) on Nov 18, 2004 at 21:06 UTC | |
by Anonymous Monk on Nov 18, 2004 at 21:28 UTC | |
by diotalevi (Canon) on Nov 18, 2004 at 21:37 UTC | |
by ikegami (Patriarch) on Nov 19, 2004 at 00:18 UTC | |
|
Re: Virtual Filehandles..
by simonm (Vicar) on Nov 18, 2004 at 21:36 UTC | |
|
Re: Virtual Filehandles..
by pg (Canon) on Nov 18, 2004 at 21:01 UTC | |
|
Re: Virtual Filehandles..
by tilly (Archbishop) on Nov 19, 2004 at 02:57 UTC |