我有一个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"),但同样没有运气。
发布于 2019-07-10 12:46:02
这就是对我起作用的东西
path_to_Renviron_file <- "C:/Users/Administrator/Documents/.Renviron"
readRenviron(path_to_Renviron_file) 发布于 2020-05-15 00:55:53
我也遇到了同样的问题:.Renviron文件在Windows上被完全忽略了。
我认为最终起作用的是重新安装R(我有R3.6,安装了R4.0)。
但事实证明我错了。神奇的调料是将--cd-to-userdocs添加到R.exe或Rscript.exe命令中。我在任何地方都找不到这个选项的文档,命令行参数help中也没有显示,但是它可以工作。
发布于 2019-07-10 12:53:30
RScript执行与普通R相同的初始化,除非使用命令行选项(--no-environ)专门禁用该初始化。.Renviron和.Rprofile文件按优先级降序在不同位置进行搜索:
R_HOME)中由于您试图在位置(2)和(3)中更改文件,但没有成功,因此在当前工作目录中有另一个启动.Renviron的Rscript文件是合理的。
https://stackoverflow.com/questions/56970689
复制相似问题