Est-il possible de récupérer la ligne de commande qui a été utilisée pour appeler un processus sur Mac OS X?
mac
command-line
unix
process
user7656
la source
la source
ps --pid $PID -o args=
C'est ce que j'utilise, de toute façon ...ps -p <pid> -o args=
ps -p <pid> -o command=
Réponses:
ps ax
vous montre la ligne de commande de tous les processus en cours d'exécution; vous pouvez chercher le pid que vous voulez.la source
Est-ce que:
faire ce dont vous avez besoin (changer ntp pour le programme qui vous intéresse)? Cela me donne généralement les arguments en ligne de commande des processus en cours d'exécution (j'utilise pour vérifier ce que Launchd a utilisé lors de l'exécution d'un démon système par exemple).
la source
cat /proc/$PROCESSNUMBER/cmdline | tr '\0' '\n'
Bien qu'il soit spécifique à Linux, il obtient la ligne de commande du processus numéroté
$PROCESSNUMBER
directement à partir du noyau (la/proc/$PROCESSNUMBER/cmdline
partie) et le rend lisible en plaçant chaque argument sur une ligne distincte en traduisant (avectr -token
replace) les \ 0 en nouvelles lignes (\ n).Cette ligne ne fonctionne que si vous mettez un vrai numéro de processus d'un processus en cours (vous pouvez en trouver un en exécutant la commande
ps -ef
) dans la partie $ PROCESSNUMBER!la source
procfs
)xargs -0 < /proc/PID/cmdline