Hola a todos Estoy haciendo un pequeño script en shell y necesito obtener el PID de un proceso. Yo lo tengo resuelto de la siguiente manera: PID_MIPROCESS=`ps aux | grep procesoabuscar | grep -v grep|awk '{print $2}'` pero me estaba preguntando a ver si hay una manera mas sencilla. Me parece increible que para eso no halla una llamada que lo devuelva directamente. He visto en las man el comando pidof, pero creo que no lo entiendo, porque nunca me devuelve nada. Alguna sugerencia? Emiliano Sutil
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2006-10-23 a las 10:00 +0200, Emiliano Sutil escribió:
pero me estaba preguntando a ver si hay una manera mas sencilla. Me parece increible que para eso no halla una llamada que lo devuelva directamente. He visto en las man el comando pidof, pero creo que no lo entiendo, porque nunca me devuelve nada.
Pues eso es lo que hay... por eso en los scripts de arranque de muchos servicios se guarda el pid del demonio en un fichero - puedes mirar como lo hacen ellos. - -- Saludos Carlos E. R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFFPI1ktTMYHG2NR9URAvWVAJ9nYv0yly2RgdppFaPmiDCs5T2+VwCeOTy6 l75fpmzG8uumyygMuTkSLac= =swBT -----END PGP SIGNATURE-----
Pues eso es lo que hay... por eso en los scripts de arranque de muchos servicios se guarda el pid del demonio en un fichero - puedes mirar como lo hacen ellos.
Me lo temía, bueno, que se le va a hacer.... Este es el tipo de cosas que tienen la pinta de que se diseñaron de una manera al principio de los tiempos y asi quedó para siempre jamás. Gracias de todas maneras Un saludo Emiliano Sutil
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2006-10-23 a las 11:41 +0200, Emiliano Sutil escribió:
Me lo temía, bueno, que se le va a hacer.... Este es el tipo de cosas que tienen la pinta de que se diseñaron de una manera al principio de los tiempos y asi quedó para siempre jamás.
Tienes mejores maneras si el proceso es hijo de un proceso tuyo, porque en principio recibes el PID en la llamada. Pero desde fuera sólo tienes el nombre, luego o buscas en la tabla de procesos o algo de esa guisa. - -- Saludos Carlos E. R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFFPI+utTMYHG2NR9URAj9bAJ4pXQnX5tjnSoHED6/nVLhgmCRyBwCfQqAe uBqRV84Vbkzq2lYow44tTxU= =uCft -----END PGP SIGNATURE-----
Otra opción:
PID1=`ps -C procesoabuscar -o pid=` & ps aux | grep $PID
Te adjunto una salida de cónsola para buscar el PID de konsole
zutanito@linux-dzj:~> PID=`ps aux | grep konsole ` & echo $PID
[1] 4266
garridoe 4135 1.3 2.2 29836 16756 ? S 11:43 0:01 konsole
garridoe 4189 0.0 0.0 2028 744 pts/0 S+ 11:45 0:00 grep konsole
Es algo más sencillo
HTH
E Garrido
El día 23/10/06, Carlos E. R.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
El 2006-10-23 a las 10:00 +0200, Emiliano Sutil escribió:
pero me estaba preguntando a ver si hay una manera mas sencilla. Me parece increible que para eso no halla una llamada que lo devuelva directamente. He visto en las man el comando pidof, pero creo que no lo entiendo, porque nunca me devuelve nada.
Pues eso es lo que hay... por eso en los scripts de arranque de muchos servicios se guarda el pid del demonio en un fichero - puedes mirar como lo hacen ellos.
- -- Saludos Carlos E. R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (GNU/Linux) Comment: Made with pgp4pine 1.76
iD8DBQFFPI1ktTMYHG2NR9URAvWVAJ9nYv0yly2RgdppFaPmiDCs5T2+VwCeOTy6 l75fpmzG8uumyygMuTkSLac= =swBT -----END PGP SIGNATURE-----
-- Para dar de baja la suscripción, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
Hola lista: Era saber si alguien ha conseguido configurar y hacer funcionar esta tarjeta de TV en algún Suse. Bien la que viene como A16AR como la que viene como A16D (sin entrada de vídeo compuesto) En la web de avermedia vienen unos "drivers" beta para la Suse 10.0 para la A16AR. ¿alguien los ha probado? Un saludo, Vicente.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Yo probé los drivers con la versión 10.0, pero sólo sirve para esa versión sin actualizaciones, en cuanto actualizas el kernel deja de funcionar. La que tengo yo es la A16AR. Al final he desintalado la tarjeta. Vicente Lliso Gallent wrote:
Hola lista:
Era saber si alguien ha conseguido configurar y hacer funcionar esta tarjeta de TV en algún Suse. Bien la que viene como A16AR como la que viene como A16D (sin entrada de vídeo compuesto)
En la web de avermedia vienen unos "drivers" beta para la Suse 10.0 para la A16AR. ¿alguien los ha probado?
Un saludo,
Vicente.
- -- Saludos de Doctor Nemo. HP Pavilion dv4396EA Microsoft Windows XP Home -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (MingW32) iD8DBQFFPK10URZrmGz13XsRAigjAJ9uwt1Hpgdpx7C1jRmrqPrgS/mh+QCglkO8 pFOmUySdzSYzBjCILGXBfSM= =AqaW -----END PGP SIGNATURE----- ______________________________________________ LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com
- -- Saludos de Doctor Nemo. HP Pavilion dv4396EA Microsoft Windows XP Home
Huy, te equivocaste de firma ;-)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (MingW32)
iD8DBQFFPK10URZrmGz13XsRAigjAJ9uwt1Hpgdpx7C1jRmrqPrgS/mh+QCglkO8 pFOmUySdzSYzBjCILGXBfSM= =AqaW -----END PGP SIGNATURE-----
Versión 10.0 de Microsoft Windows XP Home?
El 23/10/06, Doctor Nemo
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Yo probé los drivers con la versión 10.0, pero sólo sirve para esa versión sin actualizaciones, en cuanto actualizas el kernel deja de funcionar. La que tengo yo es la A16AR. Al final he desintalado la tarjeta.
Vicente Lliso Gallent wrote:
Hola lista:
Era saber si alguien ha conseguido configurar y hacer funcionar esta tarjeta de TV en algún Suse. Bien la que viene como A16AR como la que viene como A16D (sin entrada de vídeo compuesto)
En la web de avermedia vienen unos "drivers" beta para la Suse 10.0 para la A16AR. ¿alguien los ha probado?
Un saludo,
Vicente.
- -- Saludos de Doctor Nemo. HP Pavilion dv4396EA Microsoft Windows XP Home -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (MingW32)
iD8DBQFFPK10URZrmGz13XsRAigjAJ9uwt1Hpgdpx7C1jRmrqPrgS/mh+QCglkO8 pFOmUySdzSYzBjCILGXBfSM= =AqaW -----END PGP SIGNATURE-----
______________________________________________ LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com
-- Para dar de baja la suscripción, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
Era saber si alguien ha conseguido configurar y hacer funcionar esta tarjeta de TV en algún Suse. Bien la que viene como A16AR como la que viene como A16D (sin entrada de vídeo compuesto)
En la web de avermedia vienen unos "drivers" beta para la Suse 10.0 para la A16AR. ¿alguien los ha probado? En la lista de v4l (video para linux), que es donde se desarrollan y discuten los controladores de las sintonizdoras, he leído que esta soportada esta placa. Sería la número 96 que la encontraras en : /usr/src/linux/Documentation/video4linux/CARDLIST.saa7134 si tienes las funtes del kernel. Eso si con SuSE 10.0 no va ha funcionar en principio, salvo que cambies
Hola por el último kernel o emparches el que tienes, dado que el controlador tiene menos de un mes y está en desarrollo. Como dato curioso en esa misma lista se mensiona que: ... However, gpl-violations.org guys started to investigate licensing questions for the binary crap from Avermedia, so it is possible we will have source code for it in the future. Espero que te sirva, Alfredo
Bueno, bueno, bueno ... Ante todo, gracias por vuestras aportaciones: Doctor Nemo, Roberto, Juan y Alfredo. Desde luego, veo que en esto del hardware, como ocurre siempre en linux, hay quie esperarse un poquito siempre. Mis pesquisas me han llevado a poder probar una tarjeta de estas (me la han prestado para probarla en linux), la A16AR pues con la A16D ha siso imposible que funcione algo, y me he quedado chafado al ver que ni con lo que ofrece avermedia para la suse 10.0 (sin actualizar el kernel) va o se puede ver algo, aunque sea por alguna de las entradas de s-video o composite. Si que encuentra canales usando dvbscan, pero no hay manera de ver ni uno con las herramientas que te proporciona y que usan el xine. Lo peor es que ni siquiera se preocupan de que los módulos proporcionados valgan para otros kernel. Totalmente descartado. Respecto al kernel que sí que soporta estas tarjetas, el 2.6.18 parece que ya empezará a hacerlo próximamente. De momento soporta la avertv 777 (A16AR) que es como la que tengo pero sin la parte analógica (TV y FM). Habrá que esperar a la suse 10.2, que lo incluye, para empezar a probarlas. O como apuntaba Alfredo, ponerme el último kernel en la suse que tengo ahora. La clave está en que el módulo saa7134 lo desarroyen un poco más. Ahora parece que todos los fabricantes se están lanzando a usar esta serie de chips de Philips SAA7133/35 y ya empiezan a pasar de los BT8x8. Pues eso a esperar sin desesperar. Remitiré a video4linux algún comentario para aportar experiencias. Un saludo, Vicente Lliso. Vicente Lliso Gallent escribió:
Hola lista:
Era saber si alguien ha conseguido configurar y hacer funcionar esta tarjeta de TV en algún Suse. Bien la que viene como A16AR como la que viene como A16D (sin entrada de vídeo compuesto)
En la web de avermedia vienen unos "drivers" beta para la Suse 10.0 para la A16AR. ¿alguien los ha probado?
Un saludo,
Vicente.
Revisa en los siguientes links, aunque supongo que debes tener en el
kernel los drivers (modulos) para esa familia de chips en la distro:
http://linuxtv.org/v4lwiki/index.php/Saa713x_devices
http://en.opensuse.org/HCL/TV_Cards
http://linuxtv.org/v4lwiki/index.php/Generic_SAA7134_Card_Installation
http://lkml.org/lkml/2006/9/23/10
http://www.uwsg.iu.edu/hypermail/linux/kernel/0609.2/2080.html
Por lo visto en los ultimos links, necesitas la versión de kernel mas
reciente que consigas, ya que fue añadido el soporte a fines de
setiembre de este año. Sino, aplicar el patch del ultimo link y
aplicarlo a los fuentes del kernel 2.6.18 y recompilar el kernel.
Salu2
El 27/10/06, Vicente Lliso Gallent
Bueno, bueno, bueno ...
Ante todo, gracias por vuestras aportaciones: Doctor Nemo, Roberto, Juan y Alfredo.
Desde luego, veo que en esto del hardware, como ocurre siempre en linux, hay quie esperarse un poquito siempre.
Mis pesquisas me han llevado a poder probar una tarjeta de estas (me la han prestado para probarla en linux), la A16AR pues con la A16D ha siso imposible que funcione algo, y me he quedado chafado al ver que ni con lo que ofrece avermedia para la suse 10.0 (sin actualizar el kernel) va o se puede ver algo, aunque sea por alguna de las entradas de s-video o composite. Si que encuentra canales usando dvbscan, pero no hay manera de ver ni uno con las herramientas que te proporciona y que usan el xine. Lo peor es que ni siquiera se preocupan de que los módulos proporcionados valgan para otros kernel. Totalmente descartado.
Respecto al kernel que sí que soporta estas tarjetas, el 2.6.18 parece que ya empezará a hacerlo próximamente. De momento soporta la avertv 777 (A16AR) que es como la que tengo pero sin la parte analógica (TV y FM). Habrá que esperar a la suse 10.2, que lo incluye, para empezar a probarlas. O como apuntaba Alfredo, ponerme el último kernel en la suse que tengo ahora.
La clave está en que el módulo saa7134 lo desarroyen un poco más. Ahora parece que todos los fabricantes se están lanzando a usar esta serie de chips de Philips SAA7133/35 y ya empiezan a pasar de los BT8x8.
Pues eso a esperar sin desesperar. Remitiré a video4linux algún comentario para aportar experiencias.
Un saludo,
Vicente Lliso.
Vicente Lliso Gallent escribió:
Hola lista:
Era saber si alguien ha conseguido configurar y hacer funcionar esta tarjeta de TV en algún Suse. Bien la que viene como A16AR como la que viene como A16D (sin entrada de vídeo compuesto)
En la web de avermedia vienen unos "drivers" beta para la Suse 10.0 para la A16AR. ¿alguien los ha probado?
Un saludo,
Vicente.
-- Para dar de baja la suscripción, mande un mensaje a: suse-linux-s-unsubscribe@suse.com Para obtener el resto de direcciones-comando, mande un mensaje a: suse-linux-s-help@suse.com
Hola :) El Lunes, 23 de Octubre de 2006 10:00, Emiliano Sutil escribió:
Hola a todos
Estoy haciendo un pequeño script en shell y necesito obtener el PID de un proceso. Yo lo tengo resuelto de la siguiente manera: PID_MIPROCESS=`ps aux | grep procesoabuscar | grep -v grep|awk '{print $2}'`
pero me estaba preguntando a ver si hay una manera mas sencilla. Me parece increible que para eso no halla una llamada que lo devuelva directamente. He visto en las man el comando pidof, pero creo que no lo entiendo, porque nunca me devuelve nada.
Alguna sugerencia?
Puedes usar: pidof -> pidof <proceso>. Ejemplo: pidof ls $PPID -> PID del proceso padre $! -> PID del último proceso en bg $$ -> PID del script en sí HTH Rafa -- "Even paranoids have enemies." Rafa Grimán Systems Engineer Silicon Graphics Spain Santa Engracia, 120 - Planta Baja 28003 Madrid Spain Tel: +34 91 3984200 Tel: +34 91 3984201 Móvil: +34 628 117 940 http://www.sgi.com OpenWengo: rgriman Skype: rgriman
El Lunes, 23 de Octubre de 2006 10:00, Emiliano Sutil escribió:
Hola a todos
Estoy haciendo un pequeño script en shell y necesito obtener el PID de un proceso. Yo lo tengo resuelto de la siguiente manera: PID_MIPROCESS=`ps aux | grep procesoabuscar | grep -v grep|awk '{print $2}'`
pero me estaba preguntando a ver si hay una manera mas sencilla. Me parece increible que para eso no halla una llamada que lo devuelva directamente. He visto en las man el comando pidof, pero creo que no lo entiendo, porque nunca me devuelve nada.
Alguna sugerencia?
Pues simplemente es pidof <ejecutable> Tambien tienes pidofproc Por ejemplo: # pidof xterm 12332 Si tienes mas de un proceso te devuelve todos los pids, aunque todo esto puedes adaptarlo, mirate las opciones
Pues simplemente es pidof <ejecutable> Tambien tienes pidofproc
Por ejemplo:
# pidof xterm 12332
el comando pidof ya lo habia probado, pero en mi caso no me sirve, por 2 razones, porque tengo varios que se llaman igual y entonces me devuelve varios y segundo porque el proceso que estoy buscando es un programa hecho en C# corriendo con mono. En este caso el ejecutable es mono pero yo busco el programa que ejecuta, no el proceso mono, es decir: la salida de ps aux: root 5213 0.0 1.0 21244 10944 ? Sl 09:24 0:00 /opt/mono/bin/mono ./miprograma.exe yo estoy buscando miprograma.exe, y no mono que es el que me saca el pidof. Por lo menos el pidof me saca algo, que antes yo estaba probando pidof miprograma.exe y obviamente no me sacaba nada. de ahi me confusión. Un saludo Emiliano Sutil
El Lunes, 23 de Octubre de 2006 13:25, Emiliano Sutil escribió:
Pues simplemente es pidof <ejecutable> Tambien tienes pidofproc
Por ejemplo:
# pidof xterm 12332
el comando pidof ya lo habia probado, pero en mi caso no me sirve, por 2 razones, porque tengo varios que se llaman igual y entonces me devuelve varios y segundo porque el proceso que estoy buscando es un programa hecho en C# corriendo con mono. En este caso el ejecutable es mono pero yo busco el programa que ejecuta, no el proceso mono, es decir:
la salida de ps aux:
root 5213 0.0 1.0 21244 10944 ? Sl 09:24 0:00 /opt/mono/bin/mono ./miprograma.exe
yo estoy buscando miprograma.exe, y no mono que es el que me saca el pidof.
Por lo menos el pidof me saca algo, que antes yo estaba probando pidof miprograma.exe y obviamente no me sacaba nada. de ahi me confusión.
Prueba con pidofproc. Por ejemplo: root 10723 0.0 0.0 2904 1124 ? Ss Oct04 0:00 /bin/bash /sbin/yast2 # pidofproc yast2 10723
Hola
Prueba con pidofproc. Por ejemplo:
root 10723 0.0 0.0 2904 1124 ? Ss Oct04 0:00 /bin/bash /sbin/yast2
# pidofproc yast2 10723
Pues parece que este comando deberia valer, pero por alguna razon no me va: #ps aux | grep miproceso.exe root 5213 0.0 1.0 21244 10948 ? Sl 09:24 0:00 /opt/mono/bin/mono ./miproceso.exe # pidofproc miproceso.exe # no sale nada #pidofproc ./miproceso.exe # Tampoco Tiene que cumplir algun requisito especial para que pidofproc lo encuentre? Emi
Hola. El Lunes, 23 de Octubre de 2006 10:00, Emiliano Sutil escribió:
Hola a todos
Estoy haciendo un pequeño script en shell y necesito obtener el PID de un proceso. Yo lo tengo resuelto de la siguiente manera: PID_MIPROCESS=`ps aux | grep procesoabuscar | grep -v grep|awk '{print $2}'`
pero me estaba preguntando a ver si hay una manera mas sencilla. Me parece increible que para eso no halla una llamada que lo devuelva directamente. He visto en las man el comando pidof, pero creo que no lo entiendo, porque nunca me devuelve nada.
Alguna sugerencia?
Prueba con $$ :-D -- Un Saludo. Carlos Lorenzo Matés
participants (11)
-
alfredodelaiti@netscape.net
-
aux
-
Carlos E. R.
-
Carlos Lorenzo Matés
-
Comventia Express
-
Doctor Nemo
-
Emiliano Sutil
-
Juan Erbes
-
Rafa Grimán
-
Roberto Pineda
-
Vicente Lliso Gallent