2010-07-19 68 views
2

讓我首先說我是編程新手。R代碼中的命令行

我希望從R腳本內的命令行運行python腳本。我正在運行Windows XP,但也有一臺運行Windows 7的計算機。我可以運行下面的代碼,而不會出現錯誤的DOS提示符。

cd C:\Documents and Settings\USER\workspace\UGA - Website 
python test1.py 

我在R使用系統嘗試了各種不同的嘗試,但我希望有人可以指點我做錯了什麼。例如,這裏只是一個嘗試(有人建議使用絕對路徑)

cmd.1 <- shQuote("C:Python26/python.exe C:/Documents and Settings/USER/Desktop/UGA New Website", type="cmd") 
system(cmd.1) 

任何指導意見將非常感謝

+0

你不只是缺少'/''在C:Python26..'? – mbq 2010-07-19 19:41:25

+0

@ Bitbert3:未經測試,但我認爲,因爲您的目標路徑中包含空格,您還需要引用該空格。 – 2010-07-20 13:05:34

回答

2

感謝大家的幫助。我的問題是一些事情的結合,但是這段代碼起作用了。

shell(paste("python", shQuote("C:\\Documents and Settings\\USER\\Desktop\\UGA New Website\\metrics_get.py"))) 

非常感謝

1

添加/C:,這將使它看起來像這樣:

cmd.1 <- shQuote("C:Python26/python.exe C:/Documents and Settings/USER/Desktop/UGA New Website", type="cmd") 
system(cmd.1) 
1

未經測試,但試試這個:

cmd.1 <- shQuote('C:\\Python26\\python.exe "C:\\Documents and Settings\\USER\\Desktop\\UGA New Website"', type="cmd") 
system(cmd.1) 

如果這不起作用,請嘗試\,\\/上的變體,以及放置引號的位置。

您也可以嘗試使用系統cd命令更改目錄,因此您不需要絕對路徑。