traceback () для интерактивных и неинтерактивных R-сессий
Я наблюдал различие между интерактивной и неинтерактивной R сессией оtraceback()
чего я не понимаю. Для приведенного ниже кода это приведет к ошибке, но в интерактивном сеансе R я вижу информацию о трассировке, тогда как, если я сохраню код вtest.R
и позвонить черезRscript test.R
или жеR -f test.R
Я больше не вижу трассировки:
f = function() {
on.exit(traceback())
1 + 'a'
}
f()
В интерактивной R-сессии:
> f = function() {
+ on.exit(traceback())
+ 1 + 'a'
+ }
> f()
Error in 1 + "a" : non-numeric argument to binary operator
1: f()
Неинтерактивное исполнение:
$ Rscript test.R
Error in 1 + "a" : non-numeric argument to binary operator
Calls: f
No traceback available
Execution halted
Я не видел объяснения в?traceback
, и я'Мне интересно, есть ли способ включить трассировку для неинтерактивных R-сессий. Спасибо!