Cómo capturar la salida del sistema ()
Esta pregunta fue motivada porRmarkdown no genera resultados del comando del sistema en el archivo html. Por alguna razón, la salida desystem()
en R (osystem2()
) no puede ser capturado porsink()
ocapture.output()
así que actualmente no hay forma detejedor para grabar la salida. Por ejemplo, en la consola R:
> system('ls')
DESCRIPTION
NAMESPACE
R
README.md
inst
man
pero en untejedor documento, no verá el resultado, porquecapture.output(system('ls'))
escharacter(0)
, es decir, la salida no se puede capturar. Por supuesto que puedo hacercat(system('ls', intern = TRUE), sep = '\n')
como mencioné en la respuesta a esa pregunta, pero esto es un poco incómodo. Me pregunto si es una forma de capturar la salida desystem()
sin usointern = TRUE
ycat()
.
Actualizar: verhttps://github.com/yihui/knitr/issues/1203 por un truco que proporcioné para resolver el problema.