我system
在 Win 7 机器上尝试传递以下字符串。它应该.git
在 repo 中创建目录,但system
不使用它(尽管类似的方法确实适用于 Linux 机器,所以这是 Windows 特定的问题)。
system( "cd C:/Users/trinker/Desktop/foo2 && \"C:\\Program Files (x86)\\Git\\bin\\git.exe\" init" )
C:/Users/trinker/Desktop/foo2
是回购的位置。C:\\Program Files (x86)\\Git\\bin\\git.exe
是我系统上 git 的位置。
当我运行上述内容时,没有任何反应。没有消息,纳达。但是我cat
是否在字符串上运行并将其直接粘贴到它运行的命令行中,给出以下消息并.git
在适当的位置创建。
所以跑...
cat("cd C:/Users/trinker/Desktop/foo2 && \"C:\\Program Files (x86)\\Git\\bin\\git.exe\" init")
将其粘贴到命令行中...
cd C:/Users/trinker/Desktop/foo2 && "C:\Program Files (x86)\Git\bin\git.exe" init
给...
Initialized empty Git repository in C:/Users/trinker/Desktop/foo2/.git/
...哪个好
因此,我可以在 R 之外使用相同的字符串而不是在 R 中执行此操作。我需要对我system
用来使其运行的第一个字符串做些什么,就好像我cat
粘贴到命令行一样?一个很好的答案,但我想知道这里发生了什么,所以我可以在未来通过使用system
.