Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
[Allgemein] -  KDE - Python aus Menü starten
#1
Seit einiger Zeit schreibe ich eigene Python-Skripte, die mir einiges an Arbeit abnehmen. An Python habe ich richtig Spaß gefunden.

Python-Skripte, die in einem Linuxsystem ihre Arbeit tun sollen, werden normalerweise direrkt aus der Konsole gestartet:

Code:
python3 pythonskript.py

Wenn man nur zwei oder drei Skripte hat, dann ist das auch kein Thema. Bei mir häufen sich die Skripte aber nun, denn ich möchte mit jedem einzelnen Skript nur eine in sich abgeschlossene Aktion ausführen lassen.

Es ist so gesehen kein Akt, im KDE-Menü eigene Programm einzubauen. Shell-Skripte (*.sh) sind einfach in den Menübaum einzutragen und schon werden diese in einem Terminalfenster ausgeführt.

Python-Skripte jedoch werden in einer Shell gestartet und dann ausgeführt, also muss auch erst ein Terminalfenster gestartet werden. Einfach so ein Python-Skript in den Menübaum hängen, wird nicht wirklich gut funktionieren.

Ich habe mir damit geholfen, dass ich einen Shell-Wrapper programmiert habe (Idee aus dem Internet aufgenommen). Dieser sieht wie folgt aus:

Code:
#!/usr/bin/bash
#
#*********************************************************************************************
# Datum: 13.01.2023
# Dateiname: _terminal_wrapper.sh
# Autor: Jopii
#
#*********************************************************************************************
#
bash python3 $1

Damit wird zunächst Python in der Shell gestartet.

Wichtig ist aber nun, dass die Einstellung zum Dateityp (hier: .py) geändert wird. Diese ist nämlich jetzt auf die Python-Skripte auszurichten.

   

Sodann kann das Python-Skript in das KDE-Menü eingehangen werden. Das hat bei mir einige Zeit gedauert bis mir klar war, wie ich das machen muss. Aber letztlich hat es wirklich funktioniert.

   

Hier ist zu beachten, dass der komplette Pfad zur Skriptdatei angegeben wird. Ansonsten kann es zu Komplikationen kommen.

Im Reiter Erweitert ist dann noch der Haken bei Im Termin starten zu setzen, aber nichts in die Befehlszeile einzutragen.

Ob dieses Vorgehen immer und überall funktioniert, kann ich nicht sagen. Bei mir unter Kubuntu 20.04 LTS läuft es jetzt gut. Und darüber bin ich doch sehr froh.

Ein Nachteil bei der Sache ist, dass das Terminalfenster nach der Ausführung des Python-Skripts sofort geschlossen wird. Es gibt zwar Mittel und Wege (z.B. konsole --noclose -e), um dieses zu verhindern, aber die haben mich nicht überzeugt.

Nach der Beendigung des ein oder anderen Python-Skripts möchte ich gerne sehen, ob es eine Meldung gibt, die ich eingebaut habe. Daher habe ich in den Skripten, die nicht sofort nach der Ausführung verschwinden sollen, einfach ein Sleep von wenigen Sekunden eingebaut.

Code:
import time

time.sleep(10)  # Das Skript wird 10 Sekunden angehalten.

Andere Meldungen werden gesammelt und im Bedarfsfalle über das interne Mailsystem einfach in meinem Postfach abgelegt. Auch das war eine gute Übung für mich und meinen neuen Freund Python!
Zitieren Return to top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste