2008/8/26 Mariano Absatz - El Baby <[EMAIL PROTECTED]>:
> no sé nada (o casi) de Python, pero... el "shell=True" de Popen() ¿te
> asegura que eso llama a un shell que entiende el "#!/usr/bin/perl" de tu
> programa?
> p = Popen("/usr/bin/perl seqclean %s -l %s"%(fasta_in_name,l_param),
> shell=True)
> y fijate si anda...

El seqclean es ejecutado porque tengo un output que es claramente
producto del seqclean. Per vos sospechas (y con razón) de que no se
ejecuta, asi que lo que debe ser es el el seqclean ejecuta a su vez
otro programa y ese provoca el error. si yo grepeo la cadena "WAITING
for all children to finish before starting last child!", aparece en un
binario: /var/www/lau/seqclean.psx'
Lo que significa el script Perl se ejecutó. Para confirmar esto mira
el log que mande que dice esto:

 Launching actual cleaning process:
 psx -p 1  -n 1000  -i /var/www/lau/4sc/sc_sV_SB_.txt -d cleaning -C
'/var/www/lau/4sc/sc_sV_SB_.txt:ANLMS100:::11:0' -c
'/var/www/lau/seqclean.psx'


La primera parte (Launching...) está en el seqclean (linea 164 de
seqclean: http://www.pastecode.com.ar/f4e25d184).
Luego imprime el comando que ejecuta. En ese comando se ve que llama
el binario "psx" que es el que emite el "WAITING for all children to
finish before starting last child!", lo que veo es que cuando anda
bien (sin el cgi) eso no se emite. Cuando anda bien se retoma el flujo
de ejecucion en seqclean.

Pero debe ser algo que estoy haciendo mal al llamarlo desde Python asi
que voy a transladar el problema para la lista correspondiente.
-- 
Para desuscribirte tenés que visitar la página
https://listas.linux.org.ar/mailman/listinfo/lugar-gral/

/* Publica y encontra trabajo relacionado con softlibre en 
http://www.usla.org.ar/modules/jobs/ */

Si tenés algún inconveniente o consulta escribí a mailto:[EMAIL PROTECTED]

Responder a