Antworten:
Unter Linux: Wenn Sie die PID kennen, können Sie die cmdline-Datei für diese Datei katzen. Z.B:
cat /proc/PID/cmdline
Dies wird wahrscheinlich fehlschlagen, wenn die Binärdatei nach dem Start des Programms verschoben wurde.
Und natürlich:
lsof -n | grep PID | grep ' txt '
und:
ls -la /proc/PID/exe
Dies ist eine symbolische Verknüpfung zur ausführbaren Datei.
/proc/PID/cmdline
es keinen Zeilenumbruch gibt, daher möchten Sie wahrscheinlich so etwas tun cat /proc/PID/cmdline ; echo ''
.
tr '\0' ' ' < /proc/PID/cmdline ; echo ''
Kopieren Sie die Prozess-ID vom ps -e
Befehl und führen Sie dann Folgendes aus:
ps x | grep <process-id>
Keine der Methoden ( ls
, lsof
oder cat
) in den anderen Antworten arbeitet für mich. Wenn ich mache:
$ nano test.txt
Das ist mein Gewinner:
$ pgrep -f -l test
3074 nano test.txt
Oder um nur die PID zu erhalten, um sie bei der Programmierung zu verwenden:
$ pgrep -f test
3074
Getestet unter Kali Linux v1.0.6 (Debian-basiert).
Im Vergleich zu einer einfachen ls
muss ich zugeben, dass es keine so tragbare Lösung ist, aber zumindest funktioniert es.