Foros del Web » Programando para Internet » Python »

¿Como se ejecutan los scripts en Linux?

Estas en el tema de ¿Como se ejecutan los scripts en Linux? en el foro de Python en Foros del Web. Hola a todos. Les cuento que estoy ahora utilizando Ubuntu 9.10. El chiste es que cree el clásico script hola mundo.py, de esta forma: Código: ...
  #1 (permalink)  
Antiguo 02/11/2009, 19:18
Avatar de evil_reindeer  
Fecha de Ingreso: febrero-2009
Mensajes: 12
Antigüedad: 15 años, 9 meses
Puntos: 0
¿Como se ejecutan los scripts en Linux?

Hola a todos. Les cuento que estoy ahora utilizando Ubuntu 9.10.
El chiste es que cree el clásico script hola mundo.py, de esta forma:
Código:
print "hola mundo"
raw_input()
Para ejecutarlo, estoy abriendo una terminal y le doy permisos de ejecucion con

Código:
chmod +x hola mundo.py
Y luego, en la misma terminal, lo ejecuto con:

Código:
./hola mundo.py
Pero no lo ejecuta, solo muestra el siguiente mensaje de error:

Warning: unknown mime-type for "Hola" -- using "application/octet-stream"
Error: no such file "Hola"
./hola.py: línea 3: error sintáctico: no se esperaba el final del fichero

¿Que estoy haciendo mal?

Por cierto, estoy usando Python 2.6
  #2 (permalink)  
Antiguo 02/11/2009, 23:08
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: ¿Como se ejecutan los scripts en Linux?

para eso necesitas en la primera linea la shebang

Ejemplo:
Código python:
Ver original
  1. #!/usr/bin/env python
  2. print "Hola mundo"
  #3 (permalink)  
Antiguo 03/11/2009, 09:22
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: ¿Como se ejecutan los scripts en Linux?

El problema específico en este caso es que no se permiten espacios en el nombre
./hola mundo.py
intenta ejecutar el programa hola, con el parámetro "mundo.py"

2 opciones para solucionarlo:
1.- agrega una \ luego de hola:
./hola\ mundo.py
2.- deja que el sistema mismo se engargue de agregar la \, utilizando el autocompletado de BASH (escribe las primeras letras del nombre, y presiona la tecla tabulador)

Dado que python se queja de que no existe "hola.py", asumo que ya agregaste la línea que razpeitia (hola ) sugiere. En caso de que no la hayas agregado, agrégala.

También puedes ejecutar los programas python mediante

python tu_archivo.py

en ese caso no necesitas agregar la línea #!, ni dar permisos de ejecución al archivo.


Saludos.
  #4 (permalink)  
Antiguo 03/11/2009, 15:31
Avatar de evil_reindeer  
Fecha de Ingreso: febrero-2009
Mensajes: 12
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: ¿Como se ejecutan los scripts en Linux?

Muchas gracias a los dos por sus respuestas, agrege la linea del shebang y ya funciona correctamente. Ademas tampoco sabia que se podian ejecutar los programas escribiendo python hola.py en la Terminal.

Muchas gracias!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:12.