2012-07-31 133 views
1

我有一份工作,我創建了一個Ruby腳本,但使用了很多庫,因此很難追蹤。 當我像在前臺工作正常的進程在後臺無法正常工作

終端上運行它

紅寶石./my_process

它完美的作品。 但是當我啓動它作爲

紅寶石./my_process &

它停留在停止狀態下,它不工作按預期。

我曾嘗試使用daemonize_spawn gem,Process.daemon或者甚至在具有類似結果的ruby代碼中使用fork,但該過程無法正常工作。

任何想法會發生什麼?

我使用的Linux和Ruby 1.9

+2

任何錯誤或輸出? – mask8 2012-07-31 14:13:01

+0

你爲什麼要做'ruby。/ my_process'而不是'ruby my_process'? – Linuxios 2012-07-31 14:16:45

+0

該過程是否使用STDIN,curses,TTY等? – Linuxios 2012-07-31 14:20:30

回答

2

不知道你的應用程序多,我猜它卡上等待STDIN輸入。一種快速的方法來驗證這將重定向一些文件STDIN您的過程,也許是這樣的:

ruby ./my_process < /dev/zero & 
+0

好想法! +1! – Linuxios 2012-07-31 14:19:47

+0

這似乎是問題,謝謝 – user1565940 2012-08-02 08:52:20