tutorial traduccion peliculas descargar app groovy

peliculas - groovy traduccion



Groovy ejecuta el comando de shell "cp*" (2)

Quiero copiar archivos de texto y solo archivos de texto de src/ a dst/

groovy:000> "cp src/*.txt dst/".execute().text ===> groovy:000>

Puede ver que el comando ejecuta el error w / out, pero el archivo src/test.txt no se copia a dst/

Esto también falla:

groovy:000> "cp src/* dst/".execute().text ===> groovy:000>

Sin embargo...

"cp src/this.txt dst/".execute().text

trabajos

También,

"cp -R src/ dst".execute().text

trabajos

¿Por qué la dosis del comodín parece hacer que mi comando falle silenciosamente?


Gracias tedu por llevarme hasta la mitad de allí.

Creo que la razón por la que su solución no funcionó fue por un problema de ''escape''.

Por ejemplo...

"sh -c ''ls''".execute()

trabajos. Pero...

"sh -c ''ls ''".execute()

no.

Probablemente exista una forma de evitarlo correctamente en línea, pero la solución que estoy usando es pasar una matriz de cadenas a Runtime.getRuntime (). Exec

command = ["sh", "-c", "cp src/*.txt dst/"] Runtime.getRuntime().exec((String[]) command.toArray())

funciona maravillosamente!


La expansión del comodín es realizada por el shell, no por cp (o groovy). Su primer ejemplo es tratar de copiar un archivo llamado *. Puedes hacer tu comando "sh -c ''cp ...''"