Introducción al scripting con Python
Cita con formato IEEE:
E. Bahit, "Primer acercamiento al scripting", in
Python Aplicado, 4th ed., EBRC Publisher, 2022, pp.
19–20.
Cita con formato APA 7:
Bahit, E. (2022). Primer acercamiento al scripting. In
Python Aplicado (4th ed., pp. 19–20). EBRC Publisher.
Cita en línea:
(Bahit, 2022)
En programación, un script es un archivo de código fuente con instrucciones sencillas, que puede ser ejecutado a través de la línea de comandos. Se conoce como scripting a la técnica de programación empleada para crear este tipo de archivos.
Para que un archivo de código fuente sea considerado un script, debe cumplir las siguientes características:
- Ser ejecutable.
- Estar escrito en un lenguaje que pueda ser interpretado por el ordenador.
- No depender de otros archivos.
1. Archivo ejecutable
Para que un archivo pueda ser ejecutado, hay que otorgarle permisos
de ejecución. Desde la línea de comandos, se logra con el comando
chmod
:
chmod +x nombre-del-archivo
2. Lenguaje interpretado
Un script puede ser escrito en cualquier lenguaje interpretado, soportado por el Sistema Operativo, como Python, Perl, GNU Bash, PHP, Ruby, etc.
Para que el sistema operativo sepa qué intérprete utilizar para
entender y ejecutar el script, se debe colocar la ruta de dicho
intérprete en la primera línea del archivo, antecedida por los símbolos
#!
.
Lo anterior se conoce como hashbang o
shebang.
Dado que la ruta de un intérprete puede ser distinta en los diversos
Sistemas Operativos o distribuciones, realizar la llamada al intérprete
a través de env
, es una práctica habitual:
#!/usr/bin/env python
Por este motivo, un script no requiere de una extensión para poder ser interpretado.
Algunos ejemplos:
Codigo | Significado |
---|---|
#!/usr/bin/env python |
Intérprete Python (versión por defecto) |
#!/usr/bin/env python2 |
Fuerza a utilizar el intérprete de Python 2.x |
#!/usr/bin/env python3 |
Fuerza a utilizar el intérprete de Python 3.x |
#!/usr/bin/env bash |
Intérprete de GNU Bash |
3. Script vs Programa
Si un archivo de código fuente que es ejecutable y contiene la ruta del intérprete, depende de otros archivos, entonces se lo considera parte de un programa. Al no tener independencia, no cuenta como script.
Convertir un script en comando del sistema
Archivo: hola-mundo.py
#!/usr/bin/env python2 print("Hola Mundo!")
Crear un archivo llamado hola-mundo.py
(con el contenido
anterior), asignarle permisos de ejecución y probar el script
en la línea de comandos ejecutando la siguiente instrucción:
./hola-mundo.py
Ahora, como root
, copiar el archivo en la carpeta
/usr/bin
con el nombre hola-mundo
:
cp hola-mundo.py /usr/bin/hola-mundo
El script está ahora disponible para ser ejecutado como comando.
usuario@equipo:~$ hola-mundo
Salida: