5 environment variables

5.1 设置环境变量

事实上,在 R 启动时,会执行以及识别 Rprofile 和 Renviron 中的内容。

前者,通常是R代码的设定,例如:加载包,设置 options,以及其他的启动后需自动执行的代码。

后者,是 环境变量的设置。最常见的是:Rtools 安装后,在C盘:文档中存在一个文件:.Renviron其中默认仅有一行内容:

PATH="${RTOOLS40_HOME}\usr\bin;${PATH}"

这一行内容,指定了 path 环境变量。

这里,能够明显地得出在 Rprofile 和 Renviron 文件中关于设置环境变量的区别: Rprofile 中需要借助于:Sys.setenv()函数来设置环境变量。而 Renviron 中则是直接用=方式来对环境变量进行赋值。

而默认的 .Renviron 文件中 PATH 变量也是日后用户在使用devtools包后,其函数:

library(devtools)
## Loading required package: usethis
has_devel()
## Your system is ready to build packages!

has_devel()返回信息:

Your system is ready to build packages!

的重要保证。

但本节内容的重点并不在于 .Renviron 的使用上,而是关于 R 语言的环境变量设置问题。

关于 Renviron 和 Rprofile ,一方面可以参考 RStudio 官方给出的参考信息, 另一方面,在 stackoverflow上也有类似的回答。

同时,RStudio 网站上也有类似问题的回答:how-to-set-a-variable-in-renviron

因此,这次的重点不再是如何添加和设置环境变量,而是更好地关注各种环境变量本身。

首先,需要查看Sys.setenv()函数的帮助信息:在 See Also 区域的最后一行,可以通过environment variables链接跳转到环境变量信息的详细说明页面中。

这其中最常见的环境变量有: HOME, R_HOME, R_LIBS,R_LIBS_USER,…

除此以外,需要注意 Windows 系统下独有的环境变量有:R_USER

下面,先来一个一个地说明:

Sys.setenv(HOME = 'D:/')
Sys.getenv('HOME')
## [1] "D:/"

可以直接修改 HOME 变量,默认情况下,HOME变量在Windows 系统中指代C 盘文档文件夹,也就是通常所说的: C:/Users/user-name/Documents, 此处的user-name指代不同电脑上具体的用户名称。