2011-03-01 26 views
2

我想從DOS終端調用R-幫助將R幫助(...)命令。我嘗試包括:調用從DOS終端

R.exe -e "help(matrix)" 

Rscript.exe -e "help(matrix)"

的結果都是一樣的,Explorer中打開,但是沒有找到該文件。在DOS終端顯示沒有錯誤,只是:

> help('matrix') 
starting httpd help server ... done 

然而,隨着RGUI,幫助(矩陣)命令工作正常,這使它我相信httpd的幫助服務器失敗。有任何想法嗎?

+0

我無法重現你的錯誤在Windows 7上,使用R你的命令2.12.1無論是工作完全正常我的電腦上,和(使用Mozilla Firefox)顯示幫助文件中的瀏覽器。請添加詳細信息:其中,R版本,Windows版本,至極brouwser(我相信互聯網瀏覽器),...... – 2011-03-01 15:10:16

+0

@Joris我可以重現它!也許你可以給你的sessionInfo呢! – 2011-03-01 15:14:18

+0

@大衛:是否Explorer中打開你,但不給文件,還是僅僅[R打開和關閉(這意味着你必須設置'選項(help_type =「HTML」)'你Rprofile.site文件) – 2011-03-01 15:47:09

回答

3

的問題是,在運行的httpd服務器將R進程終止它有機會成爲了內容之前。

你需要找到一種方法來保持R過程活着,直到它提供你所需要的,或運行服務/守護模式將R的httpd服務器,如果是這樣,其實可能。

例如,下面將保持R過程活得更久一點,以便它可以完成處理HTTP請求:

R.exe -e "help(matrix); Sys.sleep(2)" 

我無法找到一個abvious方式來獲得將R的httpd服務器上運行作爲服務/守護進程,但我並不是真正的專家。也許別人會知道如何去做。

+0

幫助可以在Linux命令行上正常工作,而不需要任何http設施(除非它在幕後使用它們,而我沒有意識到它)。所以如果這是真的,那麼必須有一種方法讓R在Windows命令提示符下執行相同的操作。 – 2011-03-01 14:51:36

+1

@ gsk3 OP正在運行Windows。正如我已經說過的,Windows運行自己的httpd服務器來在瀏覽器中提供幫助。我不知道它在Linux上如何工作。 – 2011-03-01 14:52:58

+0

'help('matrix')'from command line對我很好。使用Chrome作爲默認瀏覽器。 – 2011-03-01 14:55:29