所以我有以下代码:
#myrcode.r
#!/usr/bin/env Rscript
f <- file("stdin")
SIR <- Sys.getenv("SOME-ENV-VARIABLE")
通常,当用户运行脚本并通过管道传输数据时,脚本应吐出通过管道传输的信息,即:
#echo "The sun is shining..." | ./myrcode.r
The sun is shining...
现在,假设我想为stdin分配一个特定的值或输入,那该怎么办?我基本上想给一个变量赋一个值(比如说“阳光明媚”),然后将该变量推到“ stdin”,这样当我运行我的r代码时,我得到以下信息:
./myrcode.r
# The sun is shining...
我最终想要此脚本执行的操作是接受通过管道传递给它的输入。检查该输入以确保其值是“ safe”,然后将其推入stdin。
我遇到的一个问题是能够为stdin分配一个值。在python中,我可以执行以下操作:
sys.stdin = io.StringIO(os.environ['MYVARIABLE'] + u'\n')
我只希望R和php相同