[Python-es] Incluir comandos del sistema

Carlos Zuniga carlos.zun en gmail.com
Lun Jun 13 22:18:14 EDT 2016


2016-06-12 15:07 GMT-05:00 Manolo Alambra <alambra.manolo en gmail.com>:
> Hola,
>
> Estoy intentando compilar un pequeño script para hacerlo portable.
>
> Me ha surgido la siguiente duda...
>
> Si realizo llamadas con subprocess, para ejecutar comandos del sistema...
>
> ¿Hay manera de incluir estos en el ejecutables.... atop, netstat, etc, para
> no tener que tenerlos instalados en el sistema?
> Como?
>

Podrías simplemente copiar los binarios a algún directorio de tu
aplicación y correrlos desde ahí pero ten en cuenta que el que corran
depende de la arquitectura de la máquina, dependencias (por ejemplo me
ha pasado que un binario de Ubuntu no funcionaba en Debian debido a
que su glibc era más nuevo) o algún otro problema como que necesiten
setuid para correr con permisos de root (y si simplemente lo copias
junto con tu script no va a tener). Además de que le da desconfianza a
un usuario si traes tu propio binario atop en lugar de usar el del
sistema.

Es mejor indicarle al usuario las dependencias para correr tu script y
que las instale con su administrador de paquetes.

Saludos


Más información sobre la lista de distribución Python-es