Crear un programa de línea de comandos en Linux (Raspbian o Ubuntu)

Crear un programa de línea de comandos en Linux (Raspbian o Ubuntu)

Mi objetivo es crear un programa que pueda instalarse y luego operarse mediante Terminal.

Por ejemplo,

  1. pip está instalado
  2. Escribimos pip install numpyen la terminal y se instala numpy.

Desafíos que estoy enfrentando:

  1. Escribimos pipen terminal o línea de comando y entiende qué es pip. No puedo pensar en una manera de hacer esto.

  2. Una vez que se completa el objetivo anterior, necesito pasar varios argumentos como en lugar de install numpyse verá así set color 4.

El lenguaje en el que estoy trabajando es Python y el sistema operativo es Raspbian.

Lamentablemente, no tengo idea de si existe una terminología para este tipo de problemas; no dude en editarla.

Respuesta1

1) Agregue algo así #!/usr/bin/env pythoncomo la primera línea de su programa principal de Python (digamos, your_program) y hágalo ejecutable con chmod a+x your_program. Luego, al escribir your_program(o ./your_program, si no lo tiene .en su PATH), se ejecutará su programa.

Detalles, por ejemploen esta pregunta, o en muchos otros lugares.

Es posible que desee modificar su(s) perfil(es) de shell para incluir algún directorio o directorios en PATHlos que pueda colocar dichos programas (los míos son /usr/local/binpara los de todo el sistema y $HOME/binpara mis scripts personales).

2) Para acceder a los argumentos de la línea de comandos, puede utilizar sys.argv. Una introducción es, por ejemploaquí, la referencia de la biblioteca esaquí.

Puedes usar otras bibliotecas comoanalizar argumentosooptarque a su vez se utiliza sys.argvpara ayudar con el análisis de las opciones de la línea de comandos.

información relacionada