I am having trouble piping stdin to an R script.
Here is my toy script test.R
:
#!/usr/bin/env Rscript while(length(line <- readLines('stdin', n=1, warn=FALSE)) > 0) { write(line, stderr()) # process line }
I'd like to go through each line and do some processing. Here is my input file named input
:
aaaaaa bbbbbb cccccc dddddd eeeeee ffffff
If I do
cat input | test.R
I only get:
aaaaaa
Is there anything that I missed?
This does not happen if you explicitly open the stdin connection.
#!/usr/bin/env Rscript f <- file("stdin") open(f) while(length(line <- readLines(f,n=1)) > 0) { write(line, stderr()) # process line }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With