2011-03-01 62 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