Réponses:
Sous Linux: si vous connaissez le PID, vous pouvez attraper le fichier cmdline pour ce fichier. Par exemple:
cat /proc/PID/cmdline
Cela échouera probablement si le binaire a été déplacé après le démarrage du programme.
Et bien sûr:
lsof -n | grep PID | grep ' txt '
et:
ls -la /proc/PID/exe
qui est un lien symbolique vers l'exécutable.
/proc/PID/cmdline
n'a pas de caractère de nouvelle ligne, donc vous voudrez probablement faire quelque chose comme cat /proc/PID/cmdline ; echo ''
.
tr '\0' ' ' < /proc/PID/cmdline ; echo ''
Copiez l'ID de processus à partir de la ps -e
commande, puis exécutez ce qui suit:
ps x | grep <process-id>
Aucune des méthodes ( ls
, lsof
ou cat
) des autres réponses ne fonctionne pour moi. Si je fais:
$ nano test.txt
Ceci est mon gagnant ,:
$ pgrep -f -l test
3074 nano test.txt
Ou, afin d'obtenir uniquement le PID pour l'utiliser dans la programmation:
$ pgrep -f test
3074
Testé sur Kali Linux v1.0.6 (basé sur Debian).
Comparé à un simple ls
, je dois admettre que ce n'est pas une solution aussi portable, mais au moins ça marche.