I am not sure what the issue is here. Do you want to capture both stderr and stdout (use 2>1 in the command with an sh-like shell), or is the
problem that you don't get immediate output?

The latter is a Perl issue: you need to circumvent output buffering.
See e.g

http://perl.plover.com/FAQs/Buffering.html

Sundar Dorai-Raj wrote:
Hi,

I have an application in perl that prints some output to either stderr or stdout.

Here's an example:

# tmp.pl
print STDERR "starting iterator\n";
for(my $i = 0; $i < 1000000; $i++) {
  print $i . "\n";
}

# tmp.R
con <- pipe("perl tmp.pl")
r <- readLines(con, n = -1)
close(con)

However, the second line stalls until the perl for-loop finishes. What I would like is to process each line as it comes. E.g. something like:

while(TRUE) {
  r <- readLines(con, n = 1) # read one line
  if(r == "10000") print(r)
  if(length(r) == 0) break
}

Of course, this won't work since I'm not calling readLines appropriately. Answers must work on Windows but may include cygwin utilities if necessary. Any advice would be appreciated. Version info at the end if it matters.

Thanks, --sundar


 > version
               _
platform       i386-pc-mingw32
arch           i386
os             mingw32
system         i386, mingw32
status
major          2
minor          8.0
year           2008
month          10
day            20
svn rev        46754
language       R
version.string R version 2.8.0 (2008-10-20)

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


--
Brian D. Ripley,                  [EMAIL PROTECTED]
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to