Foros del Web » Programación para mayores de 30 ;) » Java »

Ejecutar commando en java

Estas en el tema de Ejecutar commando en java en el foro de Java en Foros del Web. Buenas tardes tengo el siguiente problema , quiero ejecutar el comando ls /tmp/*.txt | cut -d '.' -f1 en un servlet, pero no funciona , ...
  #1 (permalink)  
Antiguo 05/11/2008, 13:52
 
Fecha de Ingreso: octubre-2008
Mensajes: 15
Antigüedad: 15 años, 6 meses
Puntos: 0
Ejecutar commando en java

Buenas tardes tengo el siguiente problema , quiero ejecutar el comando

ls /tmp/*.txt | cut -d '.' -f1

en un servlet, pero no funciona , si solo utilizo ls , si me regresa los datos correctos,
he intentado con String[], y tampoco lo ejecuta

Si alguien puede ayudarme y explircame porq cuando le agrego el cut no funcionaa,


Tambien intente poniendo la ruta absoluta del ls y del cut y sigue sin funcionar


gracias...
  #2 (permalink)  
Antiguo 05/11/2008, 23:07
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 3 meses
Puntos: 260
Sonrisa Respuesta: Ejecutar commando en java

Hola,

Posiblemente ... el comando "|", conecta la salida (output) del programa 'ls' con la entrada (input) del programa 'cut'; pero solo existe 1 canalización de entrada y 1 de salida, la de salida de 'ls' está usada por Java en el momento que ejecuta el método 'exec', y creo que 'cut' no se ejecuta por que no puede abrir la canalización.

Prueba a usar :

/bin/bash \"ls /tmp/*.txt | cut -d '.' -f1\"

Posiblemente funcione con alguna versión de bash o sh.
Saludos,
  #3 (permalink)  
Antiguo 06/11/2008, 10:27
 
Fecha de Ingreso: octubre-2008
Mensajes: 15
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Ejecutar commando en java

Gracias, lo he intentando pero ahora marca otro error, lo que he hecho mejor cree un bash donde ejecuto mi linea =( y ya no tengo problemas....


Pero me hubiera gustado saber como hacerlo directamente ...


Saludos...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:25.