我正在编写一个groovy脚本,它从行或管道中获取args。
首先,访问管道或args是不同的:
args
变量System.in.text
所以一切都在我的脚本中正常工作
BUT
当我远程运行脚本时(即groovy http://mysite.com/myscript.groovy
),SOMETIMES管道不起作用,即管道中没有任何内容(System.in.text为空),但有时它可以正常工作。
我设法将这个延迟读数System.in
修复了300毫秒(即sleep 300
命令)
我想知道我是否会错过读取管道的东西,或者我应该以某种方式报告错误
示例脚本:https://github.com/fix/groovy-spark/blob/master/Spark.groovy
答案 0 :(得分:1)
尝试包装它:
BufferedReader Sin = new BufferedReader(new InputStreamReader(System.in))
...来自Java API文档。
然后照常使用Sin.text
答案 1 :(得分:0)
def input = System.in.newReader().readLine()