我试图在R中为两台计算机安装一个软件包。
在我的笔记本电脑A上,它已成功安装,而对于另一台B,我无法安装它。然后我在谷歌搜索了几个小时,并意识到问题可能在于系统(或环境,我不确定这两个词是否相等)varibles。
我在笔记本电脑A上使用了Sys.getenv('PATH')
和shell("PATH")
,它生成了完全相同的结果,但在Sys.getenv('PATH')
下,所有目录都在{{ 1}},它是shell("PATH")
。这是唯一的区别。
然后我试着看看在计算机B上,我无法安装R包,\
和Sys.getenv('PATH')
会产生相同的结果。我发现shell("PATH")
给出了一组以;分隔的合理目录,但Sys.getenv("PATH")
表示
shell("PATH")
R中的Sys.getenv('PATH')和shell(“PATH”)有什么区别?计算机A在Windows7上,计算机B在Windows10上
答案 0 :(得分:0)
#columnleft, #columnright {
float: none;
width: 100%;
}
#columnright {
display: block ! important;
clear: right;
margin-left: 0;
}
将检索系统变量(您可以在系统属性中查看变量 - >环境变量,或者只需在Windows本地搜索中搜索环境变量)。在您的情况下,Sys.getenv
将检索PATH环境变量。
Sys.getenv('PATH')
将在cmd上运行shell('PATH')
命令。我已经看到它可能无法在所有Windows发行版上正常工作。
PATH
或/
这两个函数的结果相同。在一种情况下,结果为//
ed,而在另一种情况下为print
ed:
cat
通常,对于获取窗口print('\\')
#[1] "\\"
cat('\\')
#\
,PATH
应该更可靠,但如果两个函数都有效,则结果相同。