gpt4 book ai didi

带空格的 Rscript 文件路径

转载 作者:行者123 更新时间:2023-12-01 00:21:19 25 4
gpt4 key购买 nike

我正在尝试在 Windows shell 中运行以下 R 脚本:

Rscript C:/Documents/Folder name containing space/myscript.txt

在这种情况下,我收到错误:
Fatal error: cannot open file 'C:/Documents/Folder': No such file or directory

但是,当我使用引号时(如其他帖子中建议的那样尝试单双和三双),我收到以下错误:
Rscript "C:/Documents/Folder name containing space/myscript.txt"
The filename, directory name, or volume label syntax is incorrect.

我找不到解决空间问题和更改文件位置的方法,因此没有空格对我来说不是一个选择。

任何帮助将不胜感激。

进一步说明:

我遇到的问题与 R 没有直接关系,而是与将包含空格的文件路径传递给 Rscript 相关。

在文档中,Rsript 应按以下方式使用:
Rscript [options] [-e expr [-e expr2 ...] | file] [args]

还指出:

表达式和文件中允许有空格(但需要保护它不受正在使用的 shell 的影响,如果有的话,例如通过将参数括在引号中)。

但是,尝试将文件路径括在引号中会导致错误
The filename, directory name, or volume label syntax is incorrect.

为避免混淆 , 正在运行 Rscript C:/Documents/Folder_name/myscript.txt当路径不包含任何空格时工作正常 Rscript "C:/Documents/Folder_name/myscript.txt" .

最佳答案

这是 R 版本 3.5.0 for Windows 中的一个 BUG。
除了降级之外,一种解决方法是创建一个路径中没有空格的 R 脚本,然后使用 source() 运行间隔的脚本。 :

## C:\Documents\Folder-name-no-space\myscript.txt
source("C:/Documents/Folder name containing space/myscript.txt")

然后你运行它:
Rscript C:\Documents\Folder-name-no-space\myscript.txt

或者:
Rscript C:/Documents/Folder-name-no-space/myscript.txt

您也可以尝试使用 8.3 文件名。您可以通过以下方式获取:
for %I in ("C:/Documents/Folder name containing space/myscript.txt") do @echo %~sI

更新

自 3.5.1 以来,该问题已得到修复。

关于带空格的 Rscript 文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48544345/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com