Groovy wykonuje polecenia powłoki

Groovy dodajeexecute metoda doString aby wykonywanie powłok było dość łatwe;

println "ls".execute().text

ale jeśli wystąpi błąd, nie ma wynikowego wyniku.Czy istnieje prosty sposób na uzyskanie standardowego błędu i standardowego? (poza tworzeniem wiązki kodu do: utworzenia dwóch wątków w celu odczytania obu strumieni wejściowych, a następnie użycia strumienia macierzystego, aby poczekał na ich zakończenie, a następnie skonwertuje ciągi z powrotem na tekst?)

Miło byłoby mieć coś takiego;

 def x = shellDo("ls /tmp/NoFile")
 println "out: ${x.out} err:${x.err}"

questionAnswers(7)

yourAnswerToTheQuestion