如何测试R是否作为Rscript运行?

时间:2012-03-19 18:51:02

标签: r hadoop rscript

我在单个R文件中有代码,我希望能够在开发期间在RStudio中获取源代码(即,定义我的函数等),并且还可以通过命令行使用#! /usr/bin/env Rscript语法运行(实际上,使用Hadoop)。对于后者,我需要Rscript做的最后一件事就是开始分析(即,使用对main()函数的调用)。对于前者,我不希望调用main()函数。我希望能够测试代码是否在Rscript中运行(或者在RStudio中运行),以便我可以执行main()或不执行{{1}}。这可能吗?

一种解决方案是将我的代码分解为多个文件,但如果可能的话,我宁愿避免这种情况(使Hadoop的内容稍微容易一些)。

提前致谢。

1 个答案:

答案 0 :(得分:10)

您可以使用interactive来测试R是否以交互模式运行。 interactive将在Rscript和FALSE下的(大多数?)GUI下返回TRUE