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