0
我正在嘗試使用Net :: Telnet登錄某些設備。對於登錄提示,設備一次只需要一個字符來提供登錄和密碼提示。 Ruby一次發送整個用戶名。有沒有辦法將它設置爲一次發送一個字符?獲取Net :: Telnet一次發送一個字符?
這裏是我的腳本:
require 'net/telnet'
options = Hash.new
ipaddr = '10.160.64.103'
date = Time.new.strftime('-%H.%M.%S')
basedir = '.'
files = Dir.glob("#{ipaddr}*.log")
if files.size >= 0
File.delete(files[0])
end
file = File.new("#{ipaddr}-telnet#{date}.log", "w")
tn = Net::Telnet::new("Host" => ipaddr,
"Output_log" => "#{ipaddr}-telnet#{date}.log",
"Dump_log" => "dump.log",
"Prompt" => /->\z/)
options["Name"] ||= "anonymous"
options["Password"] ||= "********"
tn.login(options) { |c| print c }
tn.close
謝謝!工作!有一個修改:在打印後添加睡眠,或者根據計算機的速度,在相同的數據包中發送幾個字母 – user1564380 2012-07-31 03:18:19