Erstellen eines Befehlszeilenprogramms unter Linux (Raspbian oder Ubuntu)

Erstellen eines Befehlszeilenprogramms unter Linux (Raspbian oder Ubuntu)

Mein Ziel ist es, ein Programm zu erstellen, das installiert und dann über Terminal bedient werden kann.

Zum Beispiel,

  1. Pip ist installiert
  2. Wir schreiben pip install numpyins Terminal und Numpy wird installiert.

Herausforderungen, denen ich gegenüberstehe:

  1. Wir schreiben pipim Terminal oder in der Befehlszeile und es versteht, was Pip ist. Mir fällt keine Möglichkeit ein, dies zu erledigen.

  2. Sobald das obige Ziel erreicht ist, muss ich mehrere Argumente übergeben, wie beispielsweise anstelle von . install numpyEs sieht dann so aus .set color 4

Die Sprache, an der ich arbeite, ist Python und das Betriebssystem ist Raspbian.

Leider habe ich keine Ahnung, ob es für solche Probleme eine Terminologie gibt. Sie können diese gerne bearbeiten.

Antwort1

1) Fügen Sie #!/usr/bin/env pythonals erste Zeile Ihres Python-Hauptprogramms etwas wie hinzu (sagen wir your_program) und machen Sie es mit ausführbar chmod a+x your_program. Wenn Sie dann your_program(oder ./your_program, wenn Sie nicht .in Ihrem haben PATH) eingeben, wird Ihr Programm ausgeführt.

Einzelheiten zBin dieser Frageoder an vielen anderen Orten.

Möglicherweise möchten Sie Ihre Shell-Profile so ändern, dass sie ein oder mehrere Verzeichnisse enthalten, in PATHdenen Sie solche Programme ablegen können (meine sind /usr/local/binfür systemweite Programme und $HOME/binfür meine persönlichen Skripte).

2) Um auf Kommandozeilenargumente zuzugreifen, können Sie verwenden sys.argv. Eine Einführung ist z. B.Hier, die Bibliotheksreferenz lautetHier.

Sie können andere Bibliotheken verwenden wieargparseodergetoptdie wiederum sys.argvzum Parsen von Befehlszeilenoptionen dienen.

verwandte Informationen