Если у меня есть PID X процесса, как я могу узнать, в каком каталоге он запущен? По ps aux | grep Xполной командной строке я вижу, что она была вызвана. Тем не менее, в этом случае ./script.sh, и я хочу посмотреть, какой script.shон работает.
Проблема /proc/PID/exeв том, что для сценариев оболочки он показывает расположение оболочки. Проблема в /proc/PID/cwdтом, что он показывает текущий рабочий каталог процесса. Если процесс изменяет каталоги, это отражается в цели этой символической ссылки.
Это покажет, каким был $ PWD во время запуска сценария (замените идентификатор процесса, который вас интересует, где вы видите «PID»):
Там есть более простой ответ, и это использовать
pwdx
, как подробно здесьисточник