Groovy将execute方法添加到String中,使执行shell变得相当容易;
println "ls".execute().text
但是如果发生错误,则不会产生输出。是否有一种简单的方法可以同时得到标准错误和标准?(除了创建一堆代码来;创建两个线程来读取两个输入流,然后使用父流等待它们完成,然后将字符串转换回文本?)
如果能有这样的东西就好了;
def x = shellDo("ls /tmp/NoFile")
println "out: ${x.out} err:${x.err}"