Назад | Перейти на главную страницу

Как узнать абсолютный путь запущенного процесса? на Solaris

это команда для просмотра пути к процессу в Linux

ps -auxwe | grep 24466    ( 24466 is only example )

но, пожалуйста, посоветуйте, можно ли просмотреть путь запущенного процесса на Solaris

если да, то какой синтаксис ps для Solaris?

Вы можете использовать pwdx в solaris и linux.

pwdx <pid_number>

пример:

pwdx $$
25711:  /export/home/pippo

Как узнать абсолютный путь запущенного процесса?

Если под "абсолютным путем" вы подразумеваете полный путь к исполняемому двоичному файлу, это работает на моей установленной копии Solaris 11:

pmap PID | grep -v ':' | head 1 | awk '{ print $4 }'

Заменить PID с идентификатором процесса, который вас интересует.

pmap генерирует карту адресов процесса, включая полный путь к исходному файлу для сопоставления. Это включает фактический двоичный файл, который является первым отображение строка вывода. Первая строка вывода содержит идентификатор процесса и аргументы процесса. Обратите внимание, что аргументов процесса недостаточно для полной идентификации полного пути к запущенному исполняемому файлу. Первые несколько строк фактических сопоставлений адресного пространства - это сопоставления из фактического исполняемого двоичного файла, в котором указан полный абсолютный путь к двоичному файлу.

К сожалению, для получения этой информации вам потребуется доступ для чтения к карте процесса. Я не знаю, как получить то, что вы ищете, не имея такого доступа.

Изменить: также есть /proc/[PID]/path/a.out на Solaris 11, который является мягкой ссылкой на фактический двоичный файл:

В bash:

bash-4.1$ readlink /proc/$$/path/a.out
/usr/bin/bash

Обратите внимание, что /proc/$$/path/a.out лучше, чем /proc/self/path/a.out:

bash-4.1$ readlink /proc/self/path/a.out
/usr/bin/readlink

К сожалению, если у вас нет доступа к карте процесса через pmap, скорее всего, у вас не будет доступа к /proc/[PID]/path/a.out, как разрешения на /proc/[PID]/path для моей установки Solaris 11 все 500 - только владелец и root имеют права на чтение и выполнение в каталоге.

/ usr / ucb / ps auxwwww | grep 6851 работал у меня на SunOS servername01 5.10 Generic_147440-25 sun4u sparc SUNW, Sun-Fire-V490