2011-11-02 82 views
0

我已經越獄iPhone和ruby腳本在/var/root/目錄中,我需要從本地iPhone應用程序(用XCode編碼)執行命令。我試圖從本機應用程序(導入的Foundation.h)運行system("ruby /var/root/my_script.rb")函數,但是調用沒有執行腳本。如何從iPhone應用程序運行外部腳本?

感謝您的解決方案。

回答

0

在越獄4.2.1 3GS上玩過Ruby。該腳本包含以下代碼(顯示爲0,1和2在3行,一個在彼此之後):

3.times {| X | P X}

和被放置在根目錄下。我調用它從一個非常簡單的基於視圖的應用程序的應用程序的委託,在* - (BOOL)申請:(UIApplication的*)應用程序didFinishLaunchingWithOptions:(NSDictionary的)launchOptions如下:

NSLog(@"1"); 
    system("ruby /rt.rb"); 
NSLog(@"1.4"); 
    NSLog(@"2 %@", system("ruby /rt.rb"));  
NSLog(@"3"); 

Xcode的控制檯顯示以下,示出了Ruby腳本已成功運行:

星期二年11月15 12點13分13秒WR-3GS ruby​​test [501]:1 星期二年11月15 12時十三分14秒WR-3GS UIKitApplication:COM .yourcompany.rubytest [0x687f] [501]:0 Tue Nov 15 12:13:14 wr-3gs UIKitApplication:com.yourcompany.rubytest [0x687f] [501]:1 Tue Nov 15 12:13:14 wr-3gs UIKitApplication:com.yourcompany.rubytest [0x687f] [501]:2 Tue Nov 15 12:13:14 wr-3gs ruby​​test [501]:1.4 Tue Nov 15 12 :13:14 wr-3gs UIKitApplication:com.yourcompany.rubytest [0x687f] [501]:1 Tue Nov 15 12:13:14 wr-3gs UIKitApplication:com.yourcompany.rubytest [0x687f] [501]:2 Tue Nov 15 12:13:14 wr-3gs ruby​​test [501]:2(null) Tue Nov 15 12點13分14秒WR-3GS ruby​​test [501]:3

也就是說,它應在不工作

  1. 強制作爲root用戶調用'ruby'(如在系統中(「echo alpine |紅寶石「/rt.rb」根「);

  2. 完全提供紅寶石可執行文件的路徑

不過,你可以嘗試做最後兩個(以root運行和/或提供完整的紅寶石可執行文件路徑) - 他們可能會工作

相關問題