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