有没有一种简单的方法可以通过编程来确定R脚本是在Windows还是Linux中执行的?
if(.Platform$OS.type == "unix") {
} else {
}
Sys.info()["sysname"]=='Darwin'
来区分。 - conjugatepriorSys.info()["sysname"]
.Platform$OS.type
返回
[1] "unix"
或者其他东西。我可以在三台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"
随意编辑并添加到这个列表中。