1
기본적으로 아래에 같은 유형의 코드를 사용하는 큰 스크립트가 있습니다. 스크립트가 실행되고 작동하지만 화면에 출력되지 않습니다. 원격으로 실행되는 스크립트의 출력을 화면에 표시하려면 어떻게합니까? 나는 루비 스크립트를 실행하고 있습니까?Ruby Net :: SSH 세션의 출력 얻기
#!/usr/bin/ruby
#
require 'rubygems'
require 'net/ssh'
require 'pty'
if ENV['USER'] == 'root'
raise "You can't run this as root"
end
Net::SSH.start(server01, testuser) do |ssh|
ssh.open_channel do |channel|
channel.on_request "exit-status" do |channel, data|
$exit_status = data.read_long
end
channel.on_data do |channel, data|
data
end
channel.request_pty do |channel, data|
channel.exec("sudo -s")
channel.send_data("/tmp/scripts/test.sh\n")
channel.send_data("exit\n")
end
end
end
puts "DONE"