可执行 .R 文件不是 运行,路径被忽略
Executable .R file not running, path ignored
我正在尝试 helloworld.R
运行。我已授予它可执行权限,并在文件顶部添加了 #!/usr/bin/Rscript
。 (我也尝试过 #!/usr/bin/en Rscript
)。这是一个比较简单的文件:
#!/usr/bin/Rscript
x <- rnorm(100)
df <- data.frame(x = x)
write.csv(df, "sim_data.csv")
但是,任何 运行 文件的尝试都遇到了以下错误
ARGUMENT '/home/path/to/file/helloworld.R' __ignored__
R version 3.4.3 (2017-11-30) -- "Kite-Eating Tree"
Copyright (C) 2017 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
(...)
令人惊讶的是,将文件重命名为 helloworld.py
让它 运行 就好了(并输出 sim_data.csv
及其预期的内容),但这看起来很老套,所以我想知道是否有是一个更好的解决方案。
错误消息表明它是 R
可执行文件,而不是 运行 的 Rscript
可执行文件。您可以使用终端验证这一点:
R /home/path/to/file/helloworld.R # produces above error
Rscript /home/path/to/file/helloworld.R # should work
/home/path/to/file/helloworld.R # should work if file is executable
您的 window 管理器或桌面环境很可能有 .R
文件与 R
可执行文件关联,因此当您双击此类文件时会启动 R
。如何更改取决于 window 使用的管理器或桌面环境。
你不是 运行ning RScript,你是 运行ning R,所以让 R 告诉你 运行 一个文件:
$ R --help
Usage: R [options] [< infile] [> outfile]
or: R CMD command [arguments]
Options:
--args Skip the rest of the command line
-f FILE, --file=FILE Take input from 'FILE'
-e EXPR Execute 'EXPR' and exit
所以这样试试:
R -f helloworld.R
问题是,为什么您的 Rscript
可执行文件被窃听并指向 R
?
我正在尝试 helloworld.R
运行。我已授予它可执行权限,并在文件顶部添加了 #!/usr/bin/Rscript
。 (我也尝试过 #!/usr/bin/en Rscript
)。这是一个比较简单的文件:
#!/usr/bin/Rscript
x <- rnorm(100)
df <- data.frame(x = x)
write.csv(df, "sim_data.csv")
但是,任何 运行 文件的尝试都遇到了以下错误
ARGUMENT '/home/path/to/file/helloworld.R' __ignored__
R version 3.4.3 (2017-11-30) -- "Kite-Eating Tree"
Copyright (C) 2017 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
(...)
令人惊讶的是,将文件重命名为 helloworld.py
让它 运行 就好了(并输出 sim_data.csv
及其预期的内容),但这看起来很老套,所以我想知道是否有是一个更好的解决方案。
错误消息表明它是 R
可执行文件,而不是 运行 的 Rscript
可执行文件。您可以使用终端验证这一点:
R /home/path/to/file/helloworld.R # produces above error
Rscript /home/path/to/file/helloworld.R # should work
/home/path/to/file/helloworld.R # should work if file is executable
您的 window 管理器或桌面环境很可能有 .R
文件与 R
可执行文件关联,因此当您双击此类文件时会启动 R
。如何更改取决于 window 使用的管理器或桌面环境。
你不是 运行ning RScript,你是 运行ning R,所以让 R 告诉你 运行 一个文件:
$ R --help
Usage: R [options] [< infile] [> outfile]
or: R CMD command [arguments]
Options:
--args Skip the rest of the command line
-f FILE, --file=FILE Take input from 'FILE'
-e EXPR Execute 'EXPR' and exit
所以这样试试:
R -f helloworld.R
问题是,为什么您的 Rscript
可执行文件被窃听并指向 R
?