我想从R内使用git通过curl向github发送命令(即,我试图使this question作为R函数工作)。如果我能找到git.exe的位置,我可以完成此操作。我以为我可以使用Sys.which
但它不起作用。找到git.exe的位置
> Sys.which("git")
git
""
但我知道文件是存在的,当我做:
> system('"C:\\Program Files (x86)\\Git\\bin\\git" --version')
git version 1.7.11.msysgit.1
我如何才能找到在Windows git.exe? (也许是我要去了解整个问题错了,因为发生在我身上here)
'which'是一个* nix命令。 Windows上的Sys.which只会查看环境路径,所以它不会奇迹般地找到文件。你是否希望在git安装在不同地方的机器上执行此操作? – 2013-02-21 05:41:03
也许看看hadley在'devtools'中做了些什么:https://github.com/hadley/devtools/blob/master/R/install-git.r。检查底部的'git_path'函数。 – Marius 2013-02-21 05:42:15
@Andrew Mao很可能会出现在'Program Files'或'Programs Files(x86)'中,但无法确定用户是否已将文件放置在那里。也许一个'if'' else'先搜索这两个地方,然后如果没有找到搜索其他地方,但如果它不在这两个地方之一,我不知道如何找到它。 – 2013-02-21 05:45:52