首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当Rscript从powershell运行时没有找到.Renviron变量?

当Rscript从powershell运行时没有找到.Renviron变量?
EN

Stack Overflow用户
提问于 2019-07-10 12:26:40
回答 3查看 2.9K关注 0票数 7

我有一个R脚本,当从Rstudio运行时运行得很好。它使用一个.Renviron文件来提供在Sys.getenv()中可见的环境变量(所以我知道它可以工作)。

但是,当我通过powershell运行完全相同的脚本时,R脚本神秘地找不到这些环境变量(我通过print(Sys.getenv())证实了这一点--通过.Renviron提供的环境变量在任何地方都看不到。

问题

为什么在从powershell运行R脚本时没有找到.Renviron变量(与在RStudiom中运行脚本时不同)

我试过的

.Renviron文件当前保存在"C:/Users/Administrator/Documents/.Renviron"中。

检查normalizePath(Sys.getenv('R_HOME'))返回"C:\\Program Files\\R\\R-3.6.0",所以我也尝试将.Renviron放在那里。没有运气

基于,我也尝试了Sys.getenv("C:/Users/Administrator/Documents/.Renviron"),但同样没有运气。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-07-10 12:46:02

这就是对我起作用的东西

代码语言:javascript
复制
path_to_Renviron_file <- "C:/Users/Administrator/Documents/.Renviron"
readRenviron(path_to_Renviron_file) 
票数 3
EN

Stack Overflow用户

发布于 2020-05-15 00:55:53

我也遇到了同样的问题:.Renviron文件在Windows上被完全忽略了。

我认为最终起作用的是重新安装R(我有R3.6,安装了R4.0)。

但事实证明我错了。神奇的调料是将--cd-to-userdocs添加到R.exeRscript.exe命令中。我在任何地方都找不到这个选项的文档,命令行参数help中也没有显示,但是它可以工作。

票数 5
EN

Stack Overflow用户

发布于 2019-07-10 12:53:30

RScript执行与普通R相同的初始化,除非使用命令行选项(--no-environ)专门禁用该初始化。.Renviron.Rprofile文件按优先级降序在不同位置进行搜索:

  1. 在当前工作目录中
  2. 在用户主目录中
  3. 在R主目录(R_HOME)中

文档给出了更多细节。

由于您试图在位置(2)和(3)中更改文件,但没有成功,因此在当前工作目录中有另一个启动.RenvironRscript文件是合理的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56970689

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档