Groovy aggiunge il execute
metodo per String
rendere l'esecuzione delle shell abbastanza semplice;
println "ls".execute().text
ma se si verifica un errore, non viene generato alcun risultato. C'è un modo semplice per ottenere sia l'errore standard sia lo standard? (diverso dalla creazione di un gruppo di codice in; creare due thread per leggere entrambi i flussi di input, quindi utilizzare uno stream padre per attendere il loro completamento, quindi riconvertire le stringhe in testo?)
Sarebbe bello avere qualcosa di simile;
def x = shellDo("ls /tmp/NoFile")
println "out: ${x.out} err:${x.err}"