2012-06-27 20 views
0

我正在做一個在線裁判應用程序,我希望從控制器運行ruby腳本(或C++,java等程序),將輸出保存在變量中並將其與我數據庫中的測試文件進行比較。Rails 3:如何獲得外部ruby腳本輸出

我堅持運行該程序並檢查它發送到標準輸出的答案。我試過answer = load path,(它是「路徑」的腳本路徑的變量),但返回「true」,而不是標準輸出內容;和answer = `ruby path`但它不能識別路徑變量。

感謝您的時間提前。

回答

0

試試這個:system("ruby #{path}"),但要小心,不要將任何用戶提交的信息傳遞給路徑變量(或至少徹底消毒它),因爲這可能會造成極其嚴重的安全風險。

+0

謝謝。那個'#{path}'是我正在尋找的東西。其實只是'紅寶石#{路徑}'(在某些原因我無法在這個評論中看到的反引號之間)爲我工作。我認爲這會對其他編譯器和解釋器有用嗎?像C++,java,python等 並感謝您的安全提示! – Nocturn

相關問題