0

テストの自動化のために、約 30 個のコマンドを telnet でリモート デバイスに送信する必要があります。次の形式でファイルに書き込まれるコマンド:

command1
command2
command3
...

次に、スクリプトを使用します。ファイルから送信されるコマンドの前半のみです。ファイル内の文字列が 10 個の場合、最初に送信されるのは 5 個だけです。ファイルに 20 個の文字列がある場合、最初の 10 個だけが送信されます。もちろん、余分な行を追加することもできますが、この解決策は好きではありません。

require 'net/telnet'

host = Net::Telnet::new("Host" => "192.168.1.111",
                        "Output_log" => "log")

host.login("Name" => "admin",
           "Password" => "admin")

File.open("filename").each {|line| host.cmd line}

host.close
4

1 に答える 1

0

追加chompすると問題が解決しました。

File.open("filename").each {|line| host.cmd line.chomp}
于 2012-12-11T06:39:03.950 に答える