如何调用R脚本,如下所示
scan()
Windows中的?使用R
或Rscript
时,不会读取任何内容。使用Rscript
或littler
(两者都在Linux上),脚本可以按预期工作。
# Doesn't work because stdin is already redirected
R --no-save < test.R
# Works on Linux, doesn't on Windows
Rscript test.R
# Works on Linux, doesn't exist in Windows
r test.R
有没有办法在不改变R代码的情况下实现这一目标?
也许相关:为什么Windows中没有--interactive
开关?
答案 0 :(得分:5)
正如我们在评论中所讨论并确认@nograpes一样,您可以使用以下内容:
scan(file("stdin"), what=character())
在脚本在命令行界面中执行时,脚本中的而不是scan()
以标准输入的形式交互式读取。
然后,您需要按 Ctrl + Z 以结束Windows下的扫描(Mac上的 Ctrl + D )。