在通向它的路径中执行带空格的脚本

时间:2014-09-23 22:24:23

标签: r shell command-line

我试图执行一个R脚本,该脚本在通向它的路径中有空格。它失败,找不到路径错误。我的命令看起来像这样..

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

我已经尝试了

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

不起作用。这里出了什么问题?

2 个答案:

答案 0 :(得分:1)

首先让我们尝试明显的,逃离空间:

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

如果这不起作用,请在文件夹中cd并尝试从那里调用它:

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

(假设你在父文件夹中)

如果仍然无法工作..也许是脚本中的内容..你有什么?

R有时会使用单个转义字符来管理空格,因此,如果-let说 - ,在您的脚本中,您有:

source("x.r")

x.r的FULL PATH在其名称中有空格(就像与示例中的文件位于同一个文件夹中),由于找不到从r里面调用的文件,它可能会失败。

然后,将脚本中的路径更改为在空格处具有双重转义

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

再试一下我之前发布的选项。

告诉我们会发生什么!

答案 1 :(得分:0)

确保从Unix shell运行您的代码行。

目录名称或文件本身可能存在错误。作为测试用例,您可以尝试以下方法:

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

rnorm.R是:

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

这基本上应该将数字打印到你的Shell。