首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Perl telnet命令不会发送每个命令

Perl telnet命令不会发送每个命令
EN

Stack Overflow用户
提问于 2013-04-17 00:48:30
回答 2查看 761关注 0票数 0

我有下面的程序,它telnet到另一个设备,并打印序列号和Mac地址。

我的问题是,由于某种原因,如果我发送一次命令,它会跳过第一个命令并发送第二个命令,但如果我将同一命令复制两次,它将发送该命令。

连续发送多个命令的正确方式是什么?

是否应该在每次发送命令后刷新缓冲区?

我的环境

代码语言:javascript
复制
Eclipse Ide
Ubuntu 12.10
perl 5, version 14, subversion 2 (v5.14.2)

我的代码片段:

代码语言:javascript
复制
$telnet = Net::Telnet->new($remoteSystem);
$| = 1;
$telnet->buffer_empty();
$telnet->buffer_empty(); 
$result = $telnet->input_log($errorlog);
#$_ = "@lines";
@TSN =$telnet->cmd('export | grep -e SerialNumber..[A-Z] | cut -d"\"" -f2');
@TSN =$telnet->cmd('export | grep -e SerialNumber..[A-Z] | cut -d"\"" -f2');

@mac = $telnet->cmd('ifconfig  | grep eth0 | cut -d" "  -f 11');

print "@TSN AND @TSN @mac";

print FH "$remoteSystem\n";

print "Telnetting into $remoteSystem .\n";    # Prints names of the tcd

close(telnet);
}

foreach (@host) {
    checkStatus($_);
}

跳过第一个命令的输出:

代码语言:javascript
复制
bash-2.02  AND bash-2.02  ifconfig  | grep eth0 | cut -d" "  -f 11
00:11:D9:3C:6E:02
bash-2.02 # 
bash-2.02 Telnetting into debug79-109 .

输出正常,但我必须发送相同的命令两次:

代码语言:javascript
复制
export | grep -e SerialNumber..[A-Z] | cut -d"\"" -f2
AE20001901E2FD1
bash-2.02 # 
bash-2.02  AND export | grep -e SerialNumber..[A-Z] | cut -d"\"" -f2
AE20001901E2FD1
bash-2.02 # 
bash-2.02  ifconfig  | grep eth0 | cut -d" "  -f 11
00:11:D9:3C:6E:02
bash-2.02 # 
bash-2.02 Telnetting into debug79-109 
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-17 00:58:31

在调用cmd()时指定命令提示符,例如@TSN =$telnet->cmd('export | grep -e SerialNumber..[A-Z] | cut -d"\"" -f2', Prompt => 'bash-2.02 #');

票数 0
EN

Stack Overflow用户

发布于 2013-04-17 01:13:37

尝试在为模块telnet创建对象后打开连接

代码语言:javascript
复制
$telnet->open($host);

然后执行waitFor方法:(等待模式bash-2.02 #出现)

代码语言:javascript
复制
$telnet->waitFor(/^(bash-\d+.\d+ #)$/);

然后执行你的命令,它会给你适当的输出。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16042630

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档