According to ?system2, I should be able to direct the output of STDERR to a file by giving the filename as a character vector to the "stderr" argument.
But here is what happens. Given a ruby script test.rb (with its executable bit set): #!/usr/bin/env ruby STDOUT.puts "stdout" STDERR.puts "stderr" And the following R code: > t <- tempfile() > res <- system2("./test.rb", stdout=TRUE, stderr=t) stderr > res [1] "stdout" > file.exists(t) [1] FALSE I would expect the file t to exist and contain "stderr", and I would expect not to see "stderr" in the console. Also, there is a typo in the man page - the command is listed as "system" in the Description instead of "system2". The reverse behavior does work correctly: > res <- system2("./test.rb", stdout=t, stderr="") stderr > file.exists(t) [1] TRUE Thanks! Dan [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel