Guten Abend,
ich habe eine Frage die bestimmt recht simpel ist und einfach zu lösen.
System: Raspberry Pi Zugriff per SSH
Ich habe eine python Datei in der eine Wenn-Funktion erfüllt wird oder nicht. Als Reaktion soll die Datei /home/pi/433Utils/RPi_utils/codesend mit dem Zusatz 5509460 ausgeführt werden. Wie setze ich das um? Mit einem subprocess?
Danke im Voraus
Datei mit Python ausführen
- __blackjack__
- User
- Beiträge: 13007
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@Hugo_s: Für das ausführen von externen Programmen ist das `subprocess`-Modul da, ja. Im einfachsten Fall einfach die `run()`-Funktion aus dem Modul mit den entsprechenden Argumenten ausführen, also hier so etwas wie
Edit: Wobei es im Sinne der Lesbarkeit/Verständlichkeit des Programms Sinn machen würde mindestens den ”magischen” Wert an eine sinnvoll benannte Konstante zu binden und vielleicht auch den Aufruf in eine sinnvoll benannte Funktion zu verpacken.
Code: Alles auswählen
#!/usr/bin/env python3
import subprocess
def main():
...
if some_condition:
subprocess.run(
["/home/pi/433Utils/RPi_utils/codesend", "5509460"], check=True
)
...
if __name__ == "__main__":
main()
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis