我想从我的Rails应用程序运行一个shell脚本。该脚本通过net-ssh
Gem在远程服务器上启动。这里是我的代码:登录到远程系统后从rails应用程序运行shell脚本
Net::SSH.start('localhost', 'user', :password => '1234', :port => port) do |session|
session.exec!("#{Rails.root}/script/myscript")
end
我已检查脚本存在于我的本地应用程序中。脚本大约需要1个小时才能完成。我有两个问题:
- 这样做是正确的吗?
- 如何在后台运行脚本?
可以将轨道服务器上运行的效果:
使用
nohup
或screen
utitilies为在Linux服务运行的脚本? – user2622247您的shell脚本是一个单独的进程,因此不会,只要您的shell脚本不会使整个计算机停止运行。 –
嗨尝试,但没有工作我也尝试'session.exec!(“sh#{Rails.root}/script/myscript&”)'我错过了什么 – user2622247