| PROCESSMONITOR |
| Zweck: | Prozessbeginn oder -ende überwachen |
| Format: | PROCESSMONITOR [/C [name]] |
PROCESSMONITOR [/=] name STARTED | ENDED | HUNG n command
| name | Vollständiger Pfadname des zu überwachenden Prozesses |
| n | Anzahl der Wiederholungen (oder FOREVER) |
| command | Befehl, der ausgeführt werden soll, wenn die Bedingung ausgelöst wird |
Verwendung:
Der Prozessname kann Wildcards enthalten. Wenn Sie keinen Pfad für den Namen angeben, vergleicht PROCESSMONITOR nur den Dateinamen-Teil der Prozessnamen.
Die Befehlszeile wird geparst und expandiert, bevor PROCESSMONITOR ausgeführt wird. Wenn Sie also Umleitungszeichen oder Variablen an den Befehl übergeben wollen , müssen Sie diese schützen (indem Sie sie in einfache Anführungszeichen setzen, die %-Zeichen verdoppeln oder eine Befehlsgruppierung verwenden).
Wenn das letzte Argument in der Zeile ein einzelnes ( ist , wird es als Beginn einer Befehlsgruppe interpretiert. PROCESSMONITOR fügt die folgenden Zeilen an (in einer Batch-Datei) oder fordert Sie zu weiteren Eingaben auf (in der Befehlszeile), bis er ein abschließendes )erhält .
HUNG prüft das Hauptfenster des Prozesses, um zu sehen, ob er noch auf Nachrichten reagiert. Wenn der Prozess nicht innerhalb von 5 Sekunden antwortet oder GetMessage aufruft, wird die Bedingung ausgelöst. (Dies ist normalerweise nur für GUI-Anwendungen sinnvoll.)
Wenn Sie keine Argumente eingeben, zeigt PROCESSMONITOR die Prozesse an, die er gerade überwacht.
Die Überwachung läuft asynchron in einem separaten Thread. Wenn die Bedingung ausgelöst wird, wird der Befehl sofort ausgeführt. Dies kann zu Problemen führen, wenn Sie versuchen, in die Anzeige zu schreiben oder auf Dateien zuzugreifen, während der Haupt TCC Thread auch E/A durchführt. Möglicherweise müssen Sie START oder DETACH im Befehl verwenden , um Konflikte zu vermeiden.
PROCESSMONITOR erstellt beim START eines Prozesses drei Umgebungsvariablen, die per Befehl abgefragt werden können . Die Variablen werden nach Ausführung des Befehls gelöscht.
| _processname | Der Name des Prozesses, der gestartet wurde |
| _processpid | Die PID des Prozesses |
| _processcount | Die Anzahl, wie oft der Befehl ausgelöst wurde |
Beispiel:
Wenn Sie benachrichtigt werden möchten, wenn "myapp" beendet wird:
processmonitor myapp ended forever sendmail [email protected] Myapp Myapp hat sich gerade beendet!
Optionen: