Net:Telnet::cmd返回值的问题

Net:Telnet::cmd返回值的问题

以下有两个循环,功能是telnet远端主机,执行命令,将命令返回的结果存入@buffer,再通过echo命令将@buffer中的元素写入tempfile中。
问题出现在这里:
进入第一个循环,@buffer中的元素均可写入;然后进入第二个循环时,无法将@buffer中的元素写入tempfile;两个程序的逻辑相同。
请教大家,这个问题该如何解决呢,谢谢~


for(my $t=0;$t <$vmgwidnum;$t++)
{
$tmpcmd = "lhsh $mesc_counters_gcp[$l] mesc_counters_gcp $VmgwId[$t]";
system("echo  '***************************** '  > >$tempfile");
system("echo  'COMMAND : $tmpcmd '  > > $tempfile" );
@buffer = $telnet - > cmd("$tmpcmd");
foreach $linebuffer (@buffer)
{
#print "******###### $linebuffer";
system("echo  '$linebuffer '  > > $tempfile");
            }
system("echo  'COMMAND END '  > >$tempfile" );     
system("echo  ' '  > >$tempfile" );
        }

####################第二个#############################################
for(my $t=0;$t <$chnum;$t++)
{
$tmpcmd = "lhsh $ch_counters_command[$t] ch_counters_command";
("echo  '*************************************************** '  > >$tempfile");
system("echo  'COMMAND : $tmpcmd '  > > $tempfile" );
@buffer = $telnet - > cmd("$tmpcmd");
foreach $linebuffer (@buffer)
        {
            print "%%%%%%%%% $linebuffer";
            system("echo  '$linebuffer '  > > $tempfile");
        }
system("echo  'COMMAND END '  > >$tempfile" );     
system("echo  ' '  > >$tempfile" );
    }
问题已经解决,谢谢