Segun se invoque programa.py

lasizoillo lasizoillo en gmail.com
Jue Sep 24 13:16:50 CEST 2009


El día 24 de septiembre de 2009 07:59, Juan M Puertas
<juatman_2000 en yahoo.es> escribió:
> Hola.
> Xevi: * Los permisos de ejecución están activados.
> Heimy ha escrito: Sí. Pero en realidad mi siguiente pregunta iba a ser: «¿Y qué aparece si ejecutas "which python"?»
>  * Aparece: "/usr/bin/python" (la primera línea del programa indica: "#!/usr/bin/python2.5", pero si la cambio por: "#!/usr/bin/python" hace exactamente lo mismo.
>
> Heimy ha escrito:
> Es más, si en lugar de
>  $ python programa.py
> ejecuta
>  $ /usr/bin/python programa.py
> y eso sí que le funciona, estaremos seguros de antemano del problema :P
>
> * No funciona con ningua de ambas maneras. Lo que me asombra es que si funciona invocando el programa directamente: "$programa.py".  ¿Es muy raro no?

Si que es raro si. Pero el equivalente real de "/usr/bin/programa.py"
no es "/usr/bin/python /usr/bin/programa.py". Existe otra opción más
aproximada (que tampoco igual) que es: "cat /usr/bin/programa.py |
/usr/bin/python". El shebang lo que hace es determinar a quién tiene
que enviar por la entrada estandard el resto del script. Pero tampoco
es equivalente porque la variable con el nombre del programa va a
cambiar.

Me extraña mucho que la solución de heimy no funcione. Pero si no lo
hace busca algún argv[0] por el código (es la variable con el nombre
del programa), que creo que van a ir por allí los tiros ;-)


>
> Lázaro: * No funciona ni con: "#!/usr/bin/env python", ni con "#!/usr/bin/env python2.5".
>  Muchas gracias por vuestro interés. :-)
>
>
>
> _______________________________________________
> Lista de correo Python-es
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
>
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





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