Рассмотрим следующий кроссплатформенный тест:
> system('echo hello') hello
Если в RStudio я копирую строку system('echo hello') и прогон reprex::reprex(), вывод не захватывается:
system('echo hello')
reprex::reprex()
Есть ли способ захватить вывод? Я на macOS.
Возможно, настройка std_out_err = TRUE делает свою работу. Из документации по функции:
std_out_err = TRUE
std_out_err Логический. Добавлять ли раздел для вывода, отправленного в stdout и stderr процессом рендеринга представлений. Это может быть необходимо раскрыть вывод, если предстание порождает дочерние процессы или системные вызовы. Обратите внимание, что это не может быть правильно перемежено с выходом от основного процесса R, и нет никакой гарантии, что линии из стандартного вывода и стандартная ошибка в правильном хронологическом порядок. Смотрите callr :: r () для более подробной информации. Подробнее о opt ().
system("echo hello") x <- 1 x #> [1] 1
стандартный вывод и стандартная ошибка
hello
Создано в 2019-06-24 пакетом представ. (v0.3.0)