
EJECUTA SCRIPT DE PYTHON EN LA TERMINAL: DOMINA LOS COMANDOS ESENCIALES
Ejecutar scripts de Python en la terminal
Al iniciar en Python, es común utilizar un IDE para programar, pero ejecutar scripts directamente en la terminal es una habilidad fundamental que facilita la automatización y el manejo eficiente de tareas. Para comenzar, abre la terminal y navega hasta la carpeta donde se encuentra el script con:
cd ruta/a/la/carpeta
Luego, ejecuta el script con:
python nombre_del_script.py
Si usas Python 3 y el comando anterior no funciona, prueba con:
python3 nombre_del_script.py
También puedes ejecutar módulos directamente con:
python -m nombre_del_modulo
Este método es útil para correr librerías o módulos instalados sin necesidad de un archivo script.
Comandos básicos para manejar scripts en la terminal
Para trabajar con scripts en la terminal, es esencial dominar algunos comandos básicos. Primero, el comando cd te permite cambiar de directorio para situarte en la carpeta correcta. Luego, el comando python seguido del nombre del script ejecuta el código.
Si tu script requiere argumentos, agrégalos después del nombre del archivo:
python mi_script.py argumento1 argumento2
Para ejecutar un script en segundo plano y liberar la terminal, utiliza:
nohup python nombre_del_script.py &
Esto es especialmente útil para procesos largos o que deben continuar ejecutándose sin supervisión directa.
Para detener un proceso en segundo plano, identifica su PID con:
ps aux | grep python
Y luego usa:
kill PID
o bien:
pkill nombre_del_script.py
Estos comandos te permiten gestionar procesos de Python de forma eficiente desde la terminal.
Técnicas de debugging en Python desde la terminal
El debugging es crucial para detectar y corregir errores en tus programas. Una técnica sencilla y efectiva es usar la función print() para mostrar valores y mensajes durante la ejecución, ayudando a entender el flujo del programa.
def funcion_ejemplo():
print("Inicio de la función")
# código
print("Fin de la función")
funcion_ejemplo()
Para un control más avanzado, Python incluye el módulo pdb, que permite detener la ejecución y explorar el estado del programa en tiempo real. Inserta en tu código:
import pdb; pdb.set_trace()
Al llegar a esta línea, la ejecución se pausa y puedes usar comandos como:
Comando | Descripción |
---|---|
n | Ejecutar siguiente línea |
s | Entrar en una función |
b | Establecer un breakpoint |
c | Continuar ejecución |
p | Imprimir valor de variable |
q | Salir del debugger |
Esta herramienta es indispensable para un debugging profundo y eficiente.
Ejecutar scripts en segundo plano y gestión de procesos
Cuando trabajas con scripts que requieren mucho tiempo, es útil ejecutarlos en segundo plano para continuar usando la terminal. Añade un & al final del comando:
python mi_script.py &
La salida seguirá apareciendo en la terminal, pero podrás seguir trabajando. Para detener el proceso, identifica su PID con:
ps aux | grep python
Y usa:
kill PID
o
pkill mi_script.py
Esto te permite controlar la ejecución de tus scripts sin interrumpir tu flujo de trabajo.
Optimización del manejo de la terminal con Python
Python también puede ayudarte a optimizar tareas comunes en la terminal. Por ejemplo, para cambiar de directorio sin escribir rutas largas, puedes crear un script:
import os
os.chdir('/Users/usuario/Music')
Ejecutándolo con:
python music.py
Te posicionarás directamente en la carpeta deseada.
Para listar archivos o directorios de forma selectiva, un script como este es útil:
import os
opcion = input("¿Quieres ver archivos o directorios? (a/d): ")
if opcion == "a":
archivos = [f for f in os.listdir('.') if os.path.isfile(f)]
for archivo in archivos:
print(archivo)
elif opcion == "d":
directorios = [d for d in os.listdir('.') if os.path.isdir(d)]
for directorio in directorios:
print(directorio)
else:
print("Comando no válido")
Este tipo de scripts personalizados facilitan el manejo de la terminal y aumentan la productividad.
Conclusiones
Dominar la ejecución de scripts de Python en la terminal es una habilidad esencial para cualquier programador. Conocer los comandos básicos para manejar scripts en la terminal permite automatizar tareas y optimizar el flujo de trabajo. Además, las técnicas de debugging con print() y herramientas como pdb facilitan la identificación y corrección de errores.
Ejecutar scripts en segundo plano y gestionar procesos con comandos como nohup, kill y pkill mejora la eficiencia al trabajar con procesos largos. Finalmente, aprovechar Python para crear scripts que optimicen el manejo de la terminal puede transformar tareas tediosas en operaciones rápidas y sencillas.
Con práctica y conocimiento, la terminal se convierte en una poderosa aliada para el desarrollo en Python y la automatización de procesos.