How to judge the command result of batch by Net::telnet

telnet = Net::Telnet::new(“Host” => “192.168.0.16”,
“Timeout” => 10,
“Prompt” => /[$%#>] \z/n)
telnet.login(“username”, “password”) { |c| print c }
result = telnet.cmd(“c:\test.bat”)
telnet.close

how to judge the result of the batch?
If from the result variable you must know the true result.
If from the command [telnet.cmd(“echo %ERRORLEVEL”)],to make sure that
there is not any exit command in the windows batch script.
have any other good idears?

tony Tiankoon wrote:

If from the command [telnet.cmd(“echo %ERRORLEVEL”)],to make sure that
there is not any exit command in the windows batch script.

Yes, that’s basically what you’ll need to get it back from telnet.

However, if the server has sshd running then it’s possible to execute a
command remotely and get the command status back properly.

Ruby’s Net::SSH provides a rather awkward API unfortunately, but you
could copy the example of “vlad” and just shell out to local ssh command
(or pssh.exe if it’s a Windows client)

Brian C. wrote:

tony Tiankoon wrote:

If from the command [telnet.cmd(“echo %ERRORLEVEL”)],to make sure that
there is not any exit command in the windows batch script.

Yes, that’s basically what you’ll need to get it back from telnet.

However, if the server has sshd running then it’s possible to execute a
command remotely and get the command status back properly.

Ruby’s Net::SSH provides a rather awkward API unfortunately, but you
could copy the example of “vlad” and just shell out to local ssh command
(or pssh.exe if it’s a Windows client)

thank you very much Brain! before that I have known that ssh could get
the return status and result of the batch.I just want to know is there
any good idear of getting the result of batch with exit command. It
seems that if you want to get the return status and result of batch,you
cannot use telnet to excute the batch with exit command(with out \B
option) in remote windows server.

tony Tiankoon wrote:

Brian C. wrote:

tony Tiankoon wrote:

If from the command [telnet.cmd(“echo %ERRORLEVEL”)],to make sure that
there is not any exit command in the windows batch script.

Yes, that’s basically what you’ll need to get it back from telnet.

However, if the server has sshd running then it’s possible to execute a
command remotely and get the command status back properly.

Ruby’s Net::SSH provides a rather awkward API unfortunately, but you
could copy the example of “vlad” and just shell out to local ssh command
(or pssh.exe if it’s a Windows client)

thank you very much Brain! before that I have known that ssh could get
the return status and result of the batch.What I just want to know is that is > there any good idear of getting the result of batch with exit command. It
seems that if you want to get the return status and result of batch,you
cannot use telnet to excute the batch with exit command(with out \B
option) in remote windows server.

see the help information in windows

help exit
you will get the details.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs