En el post de hoy te mostraré cómo ejecutar un comando de Linux desde el lenguaje de programación Python. Es decir, invocar un comando de la terminal de Linux pero desde Python.

Algo así como ejecutar o iniciar un programa desde Python, llamando a ejecutables o binarios de Linux.

El problema

Mi problema era que no se debe invocar directamente al comando, sino invocar a bash, de manera similar a cuando se invoca a cmd en Windows.

Lo que yo quería hacer era simple: ejecutar un comando de la terminal de Linux desde Python, tal y como si lo hiciera escribiendo.

Aquí te contaré lo que me funcionó por si te ocurre algo similar.

Ejecutar comando en bash desde Python

Al final terminé usando subprocess.Popen. El comando que quería ejecutar era:

gpionext start

Y normalmente pensaríamos que se invoca así:

Ya que estamos invocando a gpionext, que está en /usr/bin/, pasándole el argumento start. Pero no, así no funciona.

La forma correcta es:

La única diferencia es que ahora estamos invocando a bash, pasándole el nombre del ejecutable y sus argumentos. Con esto ya no me generaba ningún error.

Y así es como podemos invocar comandos de Linux desde Python. Puede que a ti te funcione esto o te funcione algún otro método, puedes leer más en el sitio oficial.

Finalmente te dejo con más posts de Python.


Estoy disponible para trabajar en tu proyecto o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.
Si el post fue de tu agrado muestra tu apoyo compartiéndolo, suscribiéndote al blog, siguiéndome o realizando una donación.

Suscribir por correo

Ingresa tu correo y recibirás mis últimas entradas sobre programación, open source, bases de datos y todo lo relacionado con informática

Únete a otros 2,824 suscriptores


parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

0 Comentarios

Deja un comentario

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

A %d blogueros les gusta esto: