Если вы можете использовать оболочку bash, вы можете просто запустить код R из сценария bash и передать потоки stdout и stderr в файл. Вот пример использования heredoc:
Файл: test.sh
echo "Hello World, this is bash"
test1=$(echo "This is a test")
echo "Here is some R code:"
Rscript --slave --no-save --no-restore - "$test1" <<EOF
cat("\nHello World, this is R\n")
args <- commandArgs(TRUE)
bash_message<-args[1]
cat("\nThis is a message from bash:\n")
cat("\n",paste0(bash_message),"\n")
EOF
Затем, когда вы запускаете скрипт с stderr и stdout, переданными в файл журнала:
$ chmod +x test.sh
$ ./test.sh
$ ./test.sh &>test.log
$ cat test.log
Hello World, this is bash
Here is some R code:
Hello World, this is R
This is a message from bash:
This is a test
Другие вещи, на которые следует обратить внимание, - это попытаться просто скопировать stdout и stderr прямо из R heredoc в файл журнала; Я еще не пробовал, но, вероятно, тоже сработает.