/ / Wie fĂĽhre ich ein Python-Skript bei der Anmeldung in einem Terminal aus? - Debian, Terminal, Python

Wie fĂĽhre ich ein Python-Skript bei der Anmeldung in einem Terminal aus? - Debian, Terminal, Python

Ich habe meine Debian virtual machine auf automatische Anmeldung eingestellt, und ich möchte sicherstellen, dass bei der automatischen Anmeldung ein Terminal geöffnet wird und den Befehl ausführt

python /home/pymodbus/examples/common/synchronous_client.py

Die Ausgabe des Python-Skripts erfolgt innerhalb vondas terminal, weshalb ich es erstmal öffnen möchte. Ich habe bereits viel recherchiert und viele Dinge ausprobiert, einschließlich der Eingabe dieses Befehls in die /etc/rc.local Datei, aber dies schien nichts zu tun.

Zusätzlich habe ich das versucht

gnome-terminal -e "python /home/pymodbus/examples/common/synchronous_client.py"

Das Terminal wurde jedoch nicht so gestartet, wie ich es mir vorgestellt hatte.

Hat jemand einen Einblick, wie dies erreicht werden kann? Ich bin sehr neu in Linux und der Versuch herauszufinden, welche Pakete und Tools ich brauche, war eine sehr verwirrende Erfahrung!

Antworten:

1 fĂĽr Antwort â„– 1

So konnte ich herausfinden, wie das geht, und ich wollte meine Erkenntnisse hier teilen. Hier sind die Schritte, die ich unternommen habe:

  1. Damit der Befehl beim Start ausgefĂĽhrt wird, habe ich den Befehl bearbeitet .bashrc Datei in /home/etc/ und setzen Sie meinen Befehl ganz am Ende, nach all dem vorgefertigten Code (sudo python /home/usr/pymodbus/examples/common/synchronous_client.py). Stellen Sie sicher, dass Sie sudo in Ihrem Befehl haben.
  2. Damit das Terminal beim Start gestartet wird, habe ich eine Desktop-Datei in erstellt ~/.config/autostart (Wenn Sie den Autostart-Ordner nicht haben, können Sie einfach einen erstellen).

  3. Im Autostart-Ordner habe ich eine .desktop Datei aufgerufen gnome-terminal.desktop und bevölkerte es wie folgt:

    [Desktop Entry]
    Type=Application
    Exec=gnome-terminal
    Hidden=false
    NoDisplay=false
    X-GNOME-Autostart-enabled=true
    Name[en_NG]=Terminal
    Name=Terminal
    Comment[en_NG]=Start Terminal On Startup
    Comment=Start Terminal On Startup
    
  4. SchlieĂźlich, um die Notwendigkeit zu umgehen, die sudo Passwort Als ich das Skript ausfĂĽhren wollte, habe ich den Befehl ausgefĂĽhrt sudo visudo und fĂĽge die folgende Zeile ganz am Ende der Datei ein:

    <username> ALL=(ALL) NOPASSWD:ALL
    

Ich hoffe, das hilft jedem, der versucht, etwas Ă„hnliches wie ich zu tun!


0 fĂĽr Antwort â„– 2

Schauen Sie sich an, wie Sie cron als Startmechanismus verwenden können. Am Ende der Cron-Eintragsliste hinzufügen @reboot python /home/pymodbus/examples/common/synchronous_client.py & Sie können festlegen, dass ein Skript beim Start des Computers ausgeführt wird. Vergessen Sie nicht, das betreffende Skript mit chmod + x auszuführen. Auf diese Weise kann das System das Skript ausführen.

Auf cron wird durch Eingabe zugegriffen sudo crontab -e