[Python-es] Modulo subprocess y Script Perl

Chema Cortes pych3m4 en gmail.com
Dom Mayo 3 21:31:58 CEST 2015


El 3 de mayo de 2015, 18:56, Juan Camilo Hernandez Diaz <
camilo.hernandez en gmail.com> escribió:

> Un saludo a todos.
>
> Tengo la necesidad de ejecutar un script en perl, el cual es provisto por
> un tercero; este básicamente efectúa una consulta y genera un archivo en un
> formato especifico.
>
> He programado una función en python que se encarga de ejecutar este
> archivo, y continuar la ejecución de las demás tareas. Sin embargo, este no
> se ejecuta como es debido (no genera el archivo de salida)
>
> Hasta el momento he probado con os.system, subsystem.call y
> subsystem.Popen, todos con el mismo resultado:
>

Entiendo que por "subsystem" te refieres a "subprocess"


>
> *substr outside of string at /opt/tools/RT_reformat.pl line 77, <IN> line
> 15729*
>
> Igualmente, trate de generar un bash script que fuera llamado desde mi
> script python y ejecutara el modulo en perl; igual resultado.
>
> Cuando ejecuto el script directamente en bash funciona sin problemas y
> genera los archivos requeridos ¿Alguna sugerencia de como superar esto?
>
>

Por el error, parece que el script de perl no encuentra nada en el stream
de entrada <IN>. Cuando dices que el script "efectúa una consulta",
probablemente espera encontrar algo que deberías suministrar. Tal vez, pida
que le introduzcas un dato o simplemente pulsar una tecla para continuar.
Por defecto, el proceso que lanza python no tiene ninguna entrada de datos.

Puede que la documentación te ayude:
https://docs.python.org/2/library/subprocess.html#replacing-older-functions-with-the-subprocess-module


-- 
Hyperreals *R  "Quarks, bits y otras criaturas infinitesimales":
http://ch3m4.org/blog
Buscador Python Hispano: http://ch3m4.org/python-es
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20150503/f5155d72/attachment.html>


Más información sobre la lista de distribución Python-es