我想從我的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