我的ruby腳本應該處理多個外部進程,所以我想知道如何將不同進程的輸出重定向到不同的日誌文件。另外,由於外部流程需要花費相當多的時間才能完成,因此並行處理它們的最佳方法是什麼?ruby重定向多個進程輸出到日誌
由於我是新來的紅寶石,我可以告訴你一個殼等效代碼:
LOGDIR="/tmp/test"
for host in $(h1 h2 h3 h4); do
(ssh [email protected]${host} 'sh /tmp/scripttorun' >> ${LOGDIR}/${host}.log 2>&1) &
sleep 5
done
wait #wait for all subprocesses to complete
有關這些「外部過程」的性質的一些澄清將有所幫助。這些命令行過程是什麼?你打電話給其他網站嗎? – quandrum
是的,它們是使用net/ssh在多個系統上執行的命令行程序。 – Ashrith
[你有什麼嘗試?](http://mattgemmell.com/2008/12/08/what-have-you-tried/) – Foggzie