Foros del Web » Programando para Internet » Python »

[SOLUCIONADO] ejecucion comando linux en Python

Estas en el tema de ejecucion comando linux en Python en el foro de Python en Foros del Web. Hola a todos, Tengo el siguiente problema ejecutando un comando. Dispongo del siguiente trozo de codigo: Código: PIDservidor = "ps -ef | grep -v grep ...
  #1 (permalink)  
Antiguo 14/07/2014, 05:49
 
Fecha de Ingreso: septiembre-2010
Mensajes: 4
Antigüedad: 13 años, 7 meses
Puntos: 0
Exclamación ejecucion comando linux en Python

Hola a todos,
Tengo el siguiente problema ejecutando un comando.

Dispongo del siguiente trozo de codigo:

Código:
PIDservidor = "ps -ef | grep -v grep | grep -v python | grep "+sys.argv[2]+" " "| awk '{print $2}'"
res = commands.getstatusoutput(PIDservidor)
comandoVolcado = "jmap -dump:format=b,file=/opt/volcado_servidor.hprof res[1]"
vol = commands.getstatusoutput(comandoVolcado)
Con la primera linea recupero el PID de un servidor.
En la segunda linea me quedo con el PID del servidor
En la tercera linea construyo otro comando para lanzar.
Y en la cuarta linea ejecuto el comando.

Mi problema es que en la tercera linea, la de comandoVolcado, no me sustituye el valor de res[1], y la ejecucion de la cuarta linea me falla, porque necesito que se lanze con el valor del PID.

Que tengo mal?

Saludos
  #2 (permalink)  
Antiguo 14/07/2014, 06:53
 
Fecha de Ingreso: septiembre-2010
Mensajes: 4
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: ejecucion comando linux en Python

Hola,
Me respondo a mi mismo.
No se si habra alguna otra forma de hacerlo.

Lo que he hecho es pasar a cadena el resultado, poniendo:
Código:
comandoVolcado = "jmap -dump:format=b,file=/opt/volcado_servidor.hprof" + str(res[1])

y me funciona.

Un saludo
  #3 (permalink)  
Antiguo 14/07/2014, 11:42
 
Fecha de Ingreso: mayo-2013
Mensajes: 207
Antigüedad: 10 años, 11 meses
Puntos: 31
Respuesta: ejecucion comando linux en Python

Las otras formas son las de formateo de cadena de texto. Echa un ojo a http://www.pythonforbeginners.com/co...ting-in-python (en ingles)

Etiquetas: comando, ejecucion, gui, linux
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 05:15.