2010-08-27 61 views
1

有没有办法允许perl发起telnet会话并以编程方式向该telnet会话发出命令?telnet内联perl?

我最初尝试一个笨方法:

commands.pl:

sleep(1); 
print $command1; 
sleep(1); 
print $command2; 

然后

> perl commands.pl | telnet www.host.com port 

这是行不通的。

回答

8

有一个Net::Telnet模块。

use Net::Telnet(); 
$t = new Net::Telnet (Timeout => 10, 
         Prompt => '/bash\$ $/'); 
$t->open("sparky"); 
$t->login($username, $passwd); 
@lines = $t->cmd("who"); 
print @lines; 

(从该网页拍摄的实施例。)