显示使用 Rscript 执行的输入

show input as it's executed with Rscript

我有一个 Rscript,我 运行 使用 crontab,需要很长时间才能完成。我将它的输出附加到一个文件中,并在代码中散布了 print 语句来跟踪脚本的进度,因为它在后台 运行ning。

这行得通,但我已经厌倦了添加越来越多的 print 语句。我真正想要的是查看它正在 运行ning 什么命令以及它生成的输出。例如。当 运行 执行以下脚本时:

$ cat test.r
#!/bin/env Rscript

Sys.sleep(10)
3+2

我希望输出以某种方式成为

> Sys.sleep(10)
> 3+2
[1] 5

即如果我 运行 交互式地看到它,那正是我所看到的。

有什么想法吗?

将以下内容添加到脚本的顶部:

options(echo = TRUE)

来自?options

echo: logical. Only used in non-interactive mode, when it controls whether input is echoed. Command-line option --slave sets this to FALSE, but otherwise it starts the session as TRUE.