Groovy выполняет команды оболочки

"ls".execute() возвращает объект Process, поэтому groovy "ls".execute().text работает. Вы должны иметь groovy возможность просто прочитать groovy поток ошибок, чтобы определить, были groovy ли какие-либо ошибки.

На Process есть groovy дополнительный метод, который groovy позволяет передать StringBuffer для получения groovy текста: consumeProcessErrorStream(StringBuffer error).

Пример:

def proc = "ls".execute()
def b = new StringBuffer()
proc.consumeProcessErrorStream(b)

println proc.text
println b.toString()

groovy

2022-10-12T19:16:05+00:00