Ich weiß, dass ich die PID
für einen Prozess mit ps
bekommen kann, aber wie man den vollen Weg dieses Prozesses findet?Wie bekomme ich den vollständigen Pfad für einen Prozess unter OS X?
Antwort
OS X hat die Bibliothek libproc, die verwendet werden kann, um verschiedene Prozessinformationen zu sammeln. Um die absoluten Pfad für einen gegebenen PID, der folgende Code zu finden verwendet werden:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <libproc.h>
int main (int argc, char* argv[])
{
pid_t pid; int ret;
char pathbuf[PROC_PIDPATHINFO_MAXSIZE];
if (argc > 1) {
pid = (pid_t) atoi(argv[1]);
ret = proc_pidpath (pid, pathbuf, sizeof(pathbuf));
if (ret <= 0) {
fprintf(stderr, "PID %d: proc_pidpath();\n", pid);
fprintf(stderr, " %s\n", strerror(errno));
} else {
printf("proc %d: %s\n", pid, pathbuf);
}
}
return 0;
}
Beispiel zu kompilieren und laufen (über Code in pathfind.c gespeichert ist, ist 32291 die pid des Prozess ich versuche, für Pfadinformationen zu finden):
$ cc pathfind.c -o pathfind
$ ./pathfind 32291
proc 32291: /some/path/your-binary-app
siehe diesen Blog-Eintrag:http://astojanov.wordpress.com/2011/11/16/mac-os-x-resolve-absolute-path-using-process-pid/
Einer Lösung sein kann usi ng which:
which `ps -o comm= -p $PID`
Wobei $ PID ist pid des Prozesses, den Sie überprüfen möchten. Getestet unter OS X 10.8.2.
Getestet auf 10.7.5 auch ... brillant. – Floris
Funktioniert auch auf 10.5, danke @tomis! – AnneTheAgile
Es scheint jedoch manchmal relative Pfade zurückzugeben. Hier ist der Test, den ich gemacht habe: '$> was \' ps -o comm = -p 81233 \ '=>./Ft_minishell2', ich meine, es ist kein vollständiger Pfad wie im absoluten Pfad. Ich weiß nicht, ob das der anfängliche Gedanke hinter der Frage war. Das ist Mavericks. – conradkdotcom
Try this:
sudo ls -l /proc/$(ps -e | grep $PROCESS_NAME | awk '{print $1}')/exe
wo $ process_name Name des Prozesses ist es, Sie überprüfen möchten.
Es gibt keine/proc auf OS X ... – tomis
Haben Sie von 'osxfuse' gehört - Das Repository-Dateisystem enthält Quellcode für mehrere spannende und nützliche Dateisysteme zum Durchsuchen, Kompilieren und Erstellen von, wie sshfs, procfs, AccessibilityFS, usw. – ymn
Ich habe davon gehört (und benutze es), aber es ist nicht nativ da ... Viele Benutzer haben dies nicht installiert. – tomis
- 1. Wie bekomme ich den vollständigen Pfad für "../" in Unreal Engine?
- 2. Wie bekomme ich einen Dateideskriptor von einem std :: basic_ios für den Clam unter OS X?
- 3. Wie bekomme ich einen Teil vom vollständigen Pfad in C#?
- 4. Wie bekomme ich den vollständigen Pfad der heruntergeladenen Datei
- 5. Wie bekomme ich den vollständigen Pfad zur Datei in Zend
- 6. Wie bekomme ich den vollständigen virtuellen Pfad einer ASP.NET-Anwendung?
- 7. Mac OS X & MAMP - Wie laufe ich mysql, ohne den vollständigen Pfad eingeben zu müssen?
- 8. Wie verzögere ich einen C++ Befehl unter Mac OS X
- 9. Navigieren und vollständigen Pfad im Finder-Dialogfeld "Speichern unter" ermitteln Mac OS X
- 10. Wie verwende ich 'screencapture' unter OS X
- 11. Wie man einen Pfad auf Mac OS X in Terminal
- 12. Ich bekomme kein SWT-Display unter Mac OS X
- 13. Wie bekomme ich den Speicherort der Benutzerordner unter Mac OS X mit Objective-C?
- 14. Wie bekomme ich den vollständigen Pfad für ein Befehlszeilenargument für Dateinamen?
- 15. Den vollständigen Pfad für Windows-Dienst abrufen
- 16. Wie bekomme ich die OS X Systemversion?
- 17. Suchen Sie den Installationsort von brew unter OS X
- 18. Wie bekomme ich einen vollständigen Website-Pfad von einem relativen Website-Pfad mit BeautifulSoup
- 19. Erste Desktop-Pfad für den aktuellen Benutzer auf OS X
- 20. Wie bekomme ich den vollständigen Weg zur Textur des Materials?
- 21. Wie installiere ich Pip für Python 2.6 unter OS X?
- 22. In Linux, wie bekomme ich den vollständigen Pfad eines Befehls, den ich verwende?
- 23. Beispiel für einen Prozess unter Mac OS X aus einem C/C++ - Programm
- 24. InputManager unter OS X
- 25. Wie baue ich mod_jk unter Mac OS X Mountain Lion?
- 26. PhoneGap iOS, wie bekomme ich App "Dokumente" Ordner vollständigen Pfad?
- 27. Anwendungsaktualisierungen unter Mac OS X
- 28. Lesen anderer Prozess 'Speicher in OS X?
- 29. Verwenden von Eigen unter Mac OS X für XCode
- 30. OS X: Core-Dump generieren, ohne den Prozess herunterzufahren?
http://superuser.com/questions/103309/how-can-i-know-the-absolute-path-of-a-running-process –
mögliche Duplikate von [Get real Pfad der Anwendung von Pid?] (http://stackoverflow.com/questions/7511864/get-real-path-of-application-from-pid) – AlphaMale