Выходной журнал ошибок/предупреждений (txt файл) при запуске R script в командной строке

Если я запускаю R script в командной строке (на самом деле я запускаю это из вызова в VBA), как я могу выводить любые сообщения об ошибках/предупреждения в txt файл?

Ответ 1

Вы можете использовать sink() для переадресации сообщений, а также предупреждений в файл. Хитрость заключается в установке аргумента type="message":

Вот пример, адаптированный из справки для ?sink:

setwd(tempdir())

## capture messages and errors to a file.
zz <- file("all.Rout", open="wt")
sink(zz, type="message")

try(log("a"))

## reset message sink and close the file connection
sink(type="message")
close(zz)

## Display the log file
readLines("all.Rout")
[1] "Error in log(\"a\") : Non-numeric argument to mathematical function"

Ответ 2

Чтобы закрыть соединение с файлом журнала, вам нужно использовать sink(type="message") вместо sink() и затем close(zz).