5
我写了一个R消息,它将消息(进度报告)写入文本文件。我修改了error
选项,以便在发生错误时,该错误消息也将写入该文件:停止R脚本而不会在“包装过程中发生错误”消息
options(error = function() {
cat(geterrmessage(),file = normalizePath("logs/messages.txt"),append = TRUE)
stop()
})
它的工作原理,但如果确实发生了错误,我得到的控制台/终端窗口此消息:
Error during wrapup:
Execution halted
所以我想有一个更好的方法来中断脚本的执行......还是有?
我怀疑你必须从中删除'stop()'。 – Andrie 2014-09-11 08:05:20
然后会发生什么情况是,如果我使用Rscript.exe myscript.R运行脚本,则会报告错误,但脚本不会停止。 – 2014-09-12 23:09:51
尝试使用q()而不是stop()。错误处理程序会使用stop()函数调用,所以在stop内停止......听起来像递归。这*可能是错的。 – 2014-11-21 14:42:20