我希望通过 R 中的“shell”命令将 git 添加到我在 Windows 7 中的路径中。
shell('set PATH=%PATH%;"C:\\Program%20Files%20(x86)\\Git\\bin"', intern = TRUE)
shell("echo %PATH% ", intern= TRUE)
但我没有看到添加的路径。
如果我在 cmd.exe 中运行上面的代码,它会将它添加到 PATH。
知道问题出在哪里吗?
更新: 我最终通过 cmd.exe 手动运行以下命令(我确保以管理员身份运行)
setx PATH "C:\\Program Files (x86)\\Git\\bin"
哪个有效。但我希望我能通过 R 做到这一点。(也许创建一个临时文件并运行它?) 然后我不得不重新启动一些程序以确保它们受到了影响。
最佳答案
如果你想永久更新你的路径,那么你几乎已经有了答案:
shell('setx PATH "C:\\Program Files (x86)\\Git\\bin"')
R 仅在启动时记录 Windows 环境变量的副本,因此 strsplit(Sys.getenv("PATH"), ";")
在您重新启动之前不会有所不同
此外,这不会以管理员权限运行(除非您将 R 设置为管理员?),因此它会将路径添加到 user 路径变量而不是系统变量。
如果您希望 R 在当前 session 中看到不同的路径,只需使用 Sys.setenv
。
Sys.setenv(
PATH = paste(
Sys.getenv("PATH"),
"C:\\Program Files (x86)\\Git\\bin",
sep = ";"
)
)
这不会对路径进行永久更改。只有 R 可以看到此更改,并且只能在您关闭它之前看到。
关于windows - 如何通过 R "shell"命令在 Windows 上设置 PATH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24622725/