В Aix есть какая-либо команда, которая дает путь или ссылку на исполняемый файл процесса в / proc / <pid>

Я попробовал ls -l /proc/17301504 нет exe, который дает мне полный путь к команде. Есть ли способ получить полный путь команды в Aix 5 и выше, как в Linux?

В /proc/17301504/object a.out, который имеет ту же контрольную сумму, что и команда, но не дает полный путь.

Файловая система /proc по своей сути не переносима между операционными системами. Есть Единицы, где это вообще не существует.

Файловая система /proc в AIX документирована здесь: https://www.ibm.com/support/knowledgecenter/en/ssw_aix_61/com.ibm.aix.files/proc.htm

О файле a.out в подкаталоге object говорится:

[…] Имя a.out также появляется в каталоге как синоним исполняемого файла, связанного с текстом текущего процесса.

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

Это означает, что доступ к файлу a.out в этой структуре более или менее противоположно тому, что вы хотите сделать. Это позволяет программе пользователя получать доступ к исполняемому процессу без знания его полного пути.

В AIX также есть структуры в /proc которые содержат базовое имя исполняемого файла, но опять же, это не то, что вас интересует.

Поскольку процесс может установить свой собственный аргумент нулевой командной строки (имя процесса, которое отображается в ps ), использование ps также не является верным решением для нахождения абсолютного пути к исполняемому исполняемому файлу, даже если он был выполнен с помощью полный путь.

Что вы можете сделать, так это вывести исполняемый файл из своего inode.

Пример того, как это сделать, описан в принятом в настоящее время ответе на вопрос « Как определить исполняемый путь с его идентификатором PID на AIX 5 или более ».

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