Відповіді:
Проблема /proc/PID/exe
полягає в тому, що для скриптів оболонки він показує розташування оболонки. Проблема /proc/PID/cwd
полягає в тому, що показано поточний робочий каталог процесу. Якщо процес змінює каталоги, це відображається в цілі цього символьного посилання.
Це покаже, який був $ PWD під час запуску сценарію (замініть ідентифікатор процесу, який вас цікавить, де ви бачите "PID"):
procdir=$(grep -az "\bPWD" /proc/PID/environ); echo $procdir
або просто:
grep -az "\bPWD" /proc/PID/environ
Це покаже команду, яка її запустила, щоб ви могли побачити, чи використовувався відносний чи абсолютний каталог:
proccmd=$(grep -az PROC_NAME /proc/PID/cmdline); echo $proccmd
або просто:
grep -az PROC_NAME /proc/PID/cmdline
Разом вони повинні показати вам, який сценарій виконується. Для початку розпочалося ./
все, що вам потрібно procdir
.