Not sure if it helps for your use case, but I have an experimental package for controlling bidirectional pipe streams from R. Just thought I'd mention it. Its at
https://github.com/thk686/pipestreamr THK On Thu, May 14, 2015 at 9:30 AM, William Dunlap <wdun...@tibco.com> wrote: > The difference in the return value of close(pipeConnectionObject) > seems to depend on whether the pipe connection was opened via > the pipe() or open() functions (close() returns NULL) > > con <- pipe("ls") > > open(con, "r") > > readLines(con, n=1) > [1] "1032.R" > > print(close(con)) > NULL > > con <- pipe("ls", "r") > > scan(con, n=1, what="") > Read 1 item > [1] "1032.R" > > print(close(con)) > NULL > or via something like readLines() or scan() (close() returns status > integer). > > con <- pipe("ls") > > scan(con, n=1, what="") > Read 1 item > [1] "1032.R" > > print(close(con)) > [1] 36096 > > sprintf("0x%x", .Last.value) > [1] "0x8d00" > > > > > > > Bill Dunlap > TIBCO Software > wdunlap tibco.com > > On Wed, May 13, 2015 at 10:27 PM, Kevin Ushey <kevinus...@gmail.com> > wrote: > > > Hi Jeroen, > > > > I think `pipe` might just be returning the status code of the > > underlying command executed; for example, I get a status code of '0' > > when I test a pipe on `ls`: > > > > conn <- pipe("ls") > > stream <- readLines(conn) > > print(close(conn)) > > > > Similarly, I get an error code if I try to `ls` a non-existent > > directory (512 in my case), e.g. > > > > conn <- pipe("ls /no/path/here/sir") > > stream <- readLines(conn) > > print(close(conn)) > > > > So maybe `cat` just doesn't set a status code, and so there's nothing > > for R to forward back (ergo -- NULL)? > > > > Kevin > > > > On Wed, May 13, 2015 at 5:24 PM, Jeroen Ooms <jeroen.o...@stat.ucla.edu> > > wrote: > > > Is there a way to get the status code of a pipe() command? The > > > documentation suggests that it might be returned by close, however > > > this does not seem to be the case. > > > > > > con <- pipe("cat /etc/passwd", "r") > > > stream <- readLines(con, n = 10) > > > err <- close(con) > > > print(err) > > > > > > ______________________________________________ > > > R-devel@r-project.org mailing list > > > https://stat.ethz.ch/mailman/listinfo/r-devel > > > > ______________________________________________ > > R-devel@r-project.org mailing list > > https://stat.ethz.ch/mailman/listinfo/r-devel > > > > [[alternative HTML version deleted]] > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel > -- Timothy H. Keitt http://www.keittlab.org/ [[alternative HTML version deleted]] ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel