如何在Windows上调用使用scan()的脚本?

时间:2012-11-07 13:15:09

标签: windows r rscript

如何调用R脚本,如下所示

scan()
Windows中的

?使用RRscript时,不会读取任何内容。使用Rscriptlittler(两者都在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开关?

1 个答案:

答案 0 :(得分:5)

正如我们在评论中所讨论并确认@nograpes一样,您可以使用以下内容:

scan(file("stdin"), what=character())
在脚本在命令行界面中执行时,脚本中的

而不是scan()以标准输入的形式交互式读取。
然后,您需要按 Ctrl + Z 以结束Windows下的扫描(Mac上的 Ctrl + D )。