Prozessliste bzw. prüfen ob Prozess exisitert

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Danic
User
Beiträge: 10
Registriert: Montag 8. Januar 2007, 20:56
Kontaktdaten:

Prozessliste bzw. prüfen ob Prozess exisitert

Beitragvon Danic » Donnerstag 18. Januar 2007, 23:15

Hallo Männer,

ich brauche etwas Hilfe. Ich habe den Namen eines Prozesses und ich will herausfinden, ob der im Moment der Ausführung meines Scripts läuft. Allerdings finde ich keine Informationen darüber. Das Modul os hilft mir auch nicht weiter.

Ich hoffe ihr könnt!

(Der Prozess heißt "il2server.exe" und läuft unter Wine.)

Daniel
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 19. Januar 2007, 11:58

Also unter Windows sollte das so oder so gehen, aber wenn du Linux benutzt hilft dir das nur wenig...

Unter Linux kannst du es so versuchen. Irgendwie gibt es leider kein universelles Modul dazu.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
lunar

Re: Prozessliste bzw. prüfen ob Prozess exisitert

Beitragvon lunar » Freitag 19. Januar 2007, 12:02

Danic hat geschrieben:Hallo Männer,


Hier gibt es auch Frauen...

Danic hat geschrieben:ch habe den Namen eines Prozesses und ich will herausfinden, ob der im Moment der Ausführung meines Scripts läuft.


Du könntest (nur unter Linux) das /proc Verzeichnis durchsuchen:

Code: Alles auswählen

# -*- coding: utf-8 -*-
import os

def process_running(name):
    for fso in os.listdir('/proc'):
        path = os.path.join('/proc', fso)
        if os.path.isdir(path):
            try:
                # das Verzeichnis eines Prozesses trägt die
                # numerische UID als Namen
                uid = int(fso)
                stream = open(os.path.join(path, 'cmdline'))
                cmdline = stream.readline()
                stream.close()
                if name in cmdline:
                    return True
            except ValueError:
                # kein Prozessverzeichnis
                continue
    return False
sape
User
Beiträge: 1157
Registriert: Sonntag 3. September 2006, 12:52

Beitragvon sape » Freitag 19. Januar 2007, 12:08

Mal ins Snippet von Gerold schauen: http://www.python-forum.de/topic-8277.html

Das ist absolut Universell und funktionier sowohl auf *nixen oder nt basierenden Systemen.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Beitragvon gerold » Freitag 19. Januar 2007, 15:10

Hi @all!

Durch lunar, sape und Leonidas angeregt, habe ich versucht, ein plattformunabhängigeres Modul zu entwickeln, welches die PIDs und die Prozessnamen zurück gibt.

Siehe: http://www.python-forum.de/topic-8915.html

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Danic
User
Beiträge: 10
Registriert: Montag 8. Januar 2007, 20:56
Kontaktdaten:

Beitragvon Danic » Mittwoch 24. Januar 2007, 11:26

Gerold, das Script ROCKT! :D

Vielen Dank!

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder