R:确定脚本是在Windows还是Linux中运行

时间:2010-01-19 19:35:52

标签: r multiplatform

是否有一种简单的方法可以通过编程方式确定是否在Windows与Linux中执行R脚本?

4 个答案:

答案 0 :(得分:36)

if(.Platform$OS.type == "unix") {
} else {

}

答案 1 :(得分:12)

Sys.info()["sysname"]

答案 2 :(得分:9)

.Platform$OS.type

返回

[1] "unix"

或其他。

答案 3 :(得分:7)

我从三台Linux或Windows机器中的任何一台运行相同的代码。我使用以下命令设置工作目录:

if(R.Version()$os == "linux-gnu"){
  dir.pre <- "/home"
} else {
  dir.pre <- "C:/Users"
}

在我的debian linux服务器和我的Ubuntu笔记本电脑上:

> .Platform$OS.type
[1] "unix"
> R.Version()$os
[1] "linux-gnu"

在我的Windows 10笔记本电脑上,在RStudio:

> .Platform$OS.type
[1] "windows"
> R.Version()$os
[1] "mingw32"

随意编辑并添加到此列表中。