2014-09-23 39 views
0

我試圖執行一個R腳本,該腳本在通向它的路徑中有空格。它失敗,路徑未找到錯誤。我的命令看起來像這樣..在通向它的路徑中執行一個空格的腳本

Rscript ../A/B C/test.R 

我已經試過

Rscript "`../A/B C/test.R`" 
Rscript "../A/B C/test.R" 

不工作。這裏有什麼問題?

+2

你是否檢查過這是否是正確的路徑? – 2014-09-23 22:28:46

+1

+1 @ AndyClifton的評論,因爲最後一個版本('Rscript「../A/B C/test.R」')應該工作得很好,如果那裏有一個可運行的文件。 – 2014-09-23 22:32:20

+0

如果您運行Rscript --help,您會看到「'文件'可能包含空格但不包含shell元字符」,所以我想知道是否支持路徑擴展。 – 2014-09-23 22:33:50

回答

0

確保您正在從Unix shell運行您的代碼行。

您的目錄名稱或文件本身可能存在錯誤。作爲測試的情況下,可以嘗試以下方法:

Rscript "/directory/test A/rnorm.R" 

rnorm.R之中:

x <- rnorm(200, 10, 4) 
print(x) 

這基本上應該打印的數字在殼牌。

1

首先,讓我們試試明顯,逃生空間:

Rscript "../A/B\ C/test.R" 

如果不工作,cd裏面的文件夾,並嘗試從那裏調用它:

cd A/B\ C/ && Rscript test.r 

(假設你」重新在父文件夾中)

如果仍然沒有工作..也許是腳本內的東西..你有什麼?

R有單轉義字符的問題有時管理的空間,所以,如果 - 讓我們聲言如下─,你的腳本中你有:

source("x.r") 

和XR的完整路徑,其名稱中有空格(被在與你的例子中的文件相同的文件夾中),它可能會失敗,因爲沒有找到從r中調用的文件。

然後,更改路徑裏面的腳本有雙逃逸的空間

/A/B C/ -> /A/B\\ C/ 

,然後重試之前的選擇我張貼。

告訴我們發生了什麼!

相關問題