Is there a simple way to programmatically determine if an R script is being executed in Windows vs. Linux?
是否有一种简单的方法以编程方式确定在Windows和Linux中是否正在执行R脚本?
4 个解决方案
#1
30
if(.Platform$OS.type == "unix") {
} else {
}
#2
10
Sys.info()["sysname"]
#3
6
.Platform$OS.type
returns
返回
[1] "unix"
or something else.
或者其他东西。
#4
2
I run the same code from any of three Linux or Windows machines. I use the following to set up working directories:
我在三个Linux或Windows机器上运行相同的代码。我使用以下方法设置工作目录:
if(R.Version()$os == "linux-gnu" {
dir.pre <- "/home"
} else {
dir.pre <- "C:/Users"
}
On my debian linux server and my Ubuntu laptop:
在我的debian linux服务器和我的Ubuntu笔记本上:
> .Platform$OS.type
[1] "unix"
> R.Version()$os
[1] "linux-gnu"
On my Windows 10 laptop, in RStudio:
在我的Windows 10笔记本电脑上,在RStudio:
> .Platform$OS.type
[1] "windows"
> R.Version()$os
[1] "mingw32"
Feel free to edit and add to this list.
请随意编辑并添加到此列表。
#1
30
if(.Platform$OS.type == "unix") {
} else {
}
#2
10
Sys.info()["sysname"]
#3
6
.Platform$OS.type
returns
返回
[1] "unix"
or something else.
或者其他东西。
#4
2
I run the same code from any of three Linux or Windows machines. I use the following to set up working directories:
我在三个Linux或Windows机器上运行相同的代码。我使用以下方法设置工作目录:
if(R.Version()$os == "linux-gnu" {
dir.pre <- "/home"
} else {
dir.pre <- "C:/Users"
}
On my debian linux server and my Ubuntu laptop:
在我的debian linux服务器和我的Ubuntu笔记本上:
> .Platform$OS.type
[1] "unix"
> R.Version()$os
[1] "linux-gnu"
On my Windows 10 laptop, in RStudio:
在我的Windows 10笔记本电脑上,在RStudio:
> .Platform$OS.type
[1] "windows"
> R.Version()$os
[1] "mingw32"
Feel free to edit and add to this list.
请随意编辑并添加到此列表。