Foros del Web » Programando para Internet » PHP »

Guarde pid del programa ejecutado en linux

Estas en el tema de Guarde pid del programa ejecutado en linux en el foro de PHP en Foros del Web. Hola que tal, estoy desarrollando una pequeña aplicacion en php sobre linux, ejecuto programa $ejecutar = shell_exec("seer"); ahora quiero guardar el PID generado por este ...
  #1 (permalink)  
Antiguo 11/04/2007, 01:20
 
Fecha de Ingreso: junio-2004
Mensajes: 80
Antigüedad: 19 años, 10 meses
Puntos: 0
Guarde pid del programa ejecutado en linux

Hola que tal,

estoy desarrollando una pequeña aplicacion en php sobre linux, ejecuto programa

$ejecutar = shell_exec("seer");

ahora quiero guardar el PID generado por este proceso en la base de datos...

alguien sabe como hacerlo.

artaniz
  #2 (permalink)  
Antiguo 11/04/2007, 01:43
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 1 mes
Puntos: 62
Re: Guarde pid del programa ejecutado en linux

como pista te pongo un comandito para saber el PID del proceso:

Código PHP:
$ejecutar shell_exec("seer");
$output shell_exec("pgrep -u root seer");
// el nº de pid lo tendras dentro de output 
si es que lo ejecutas como root, si lo ejecutas como otro usuario deberas de cambiarlo.

Haz un echo output para ver si funciona.

suerte
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
  #3 (permalink)  
Antiguo 11/04/2007, 01:53
 
Fecha de Ingreso: junio-2004
Mensajes: 80
Antigüedad: 19 años, 10 meses
Puntos: 0
Re: Guarde pid del programa ejecutado en linux

Zital gracias, bueno, ahi me muestra los pid de esa aplicacion... si se esta ejecutando varias veces pues se muestran todos los pid ...

La idea es que cuando ejecute seer lo pueda guardar el PID en la bd para luego parar un proceso especifico o pid
  #4 (permalink)  
Antiguo 11/04/2007, 03:06
Avatar de ZiTAL  
Fecha de Ingreso: marzo-2004
Ubicación: Bermio (Bizkaia)
Mensajes: 1.545
Antigüedad: 20 años, 1 mes
Puntos: 62
Re: Guarde pid del programa ejecutado en linux

pues entonces eso no te vale, mira estos comandos:

Código:
ps aux
ps aux | grep seer
en el primero ves todos los procesos y si te fijas la columna 9 pone fecha de inicio, con eso podras controlar que proceso matar.

No te voy a dar la solucion programada ya que estoy trabajando y no tengo tiempo, pero te podria dar pistas a ver.

Podrias guardar el resultado de "ps aux | grep seer" en un fichero:

ps aux | grep seer > procesos.txt

y luego trabajar con ese archivo, ten en cuenta que ese archivo deberá estar en el directorio donde este el servidor web ejemplo:

/web/ , por lo tanto:

ps aux | grep seer > /web/procesos.txt, y trabajar como ficheros.

Otra opcion seria meterlo en una variable como lo hemos hecho antes:

$output=shell_exec("ps aux | grep seer");

pero no se como lo guarda si como arrays, todo en uno, no se.

Vete probando y nos comentas que es muy interesante.

Suerte!!!
__________________
http://zital.no-ip.org
____________________

Euskerie ahuen eta bijotzan
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 07:59.