Можно ли получить командную строку, которая использовалась для вызова процесса в Mac OS X?
mac
command-line
unix
process
user7656
источник
источник
ps --pid $PID -o args=
Это то, что я использую, в любом случае ...ps -p <pid> -o args=
ps -p <pid> -o command=
Ответы:
ps ax
показывает командную строку всех запущенных процессов; Вы можете найти нужный pid.источник
Имеет:
делать то, что вам нужно (сменить ntp на интересующую вас программу)? Это обычно дает мне аргументы командной строки запущенных процессов (я использую, чтобы проверить, что Launchd использовал, например, при запуске системного демона).
источник
cat /proc/$PROCESSNUMBER/cmdline | tr '\0' '\n'
Несмотря на то, что он специфичен для Linux, он получает командную строку процесса, пронумерованную
$PROCESSNUMBER
прямо из ядра (/proc/$PROCESSNUMBER/cmdline
части), и делает его читаемым, помещая каждый аргумент в отдельную строку, переводя (сtr -token
заменой) \ 0 в новые строки (\ n).Эта строка работает, только если вы поместили реальный номер процесса запущенного процесса (вы можете найти его, запустив команду
ps -ef
) в части $ PROCESSNUMBER!источник
procfs
)xargs -0 < /proc/PID/cmdline