2008/05/26

Ejecutar un script externo en consola de Python, IDLE, Jython y BeanShell

Jython y BeanShell son muy útiles para ejecturar comandos de forma interactiva. Sin embargo, cuando se quieren ejecutar directamente scripts escritos la opción de cortar y pegar no es muy cómoda. Por eso en ocasiones, puede ser útil usar lo siguiente:
En BeanShell:
filepath = "/usr/local/scripts/bsh/myscript.bsh";
source(filepath);
En Jython:
filepath = '/usr/local/scripts/py/myscript.py'
execfile(filepath)
Este modo de lanzar scripts tiene también la ventaja de que, en caso de fallos en el script, los mensajes de error dan una información más completa aportando por ejemplo la línea donde se ha producido el error.

UPDATE: Ejecutar un script externo en IDLE o en la consola interactiva de python

En la consola de IDLE se podría ejecutar un script externo con:
filepath = '/usr/local/scripts/py/myscript.py'
execfile(filepath)

En python3 sería:

exec(open("/usr/local/scripts/py/myscript.py").read())

UPDATE2: Ejecutar un script externo en ipython 

En ipython existe la posibilidad de usar el comando "run" directamente (sin comillas en el path) para ejecutar un script externo, es decir:
run /usr/local/scripts/py/myscript.py


       
   

No hay comentarios: