엄격한 복제를 통해 다른 폴더에서 동일한 스크립트의 다른 구성을 실행하고 있는데 외부 터미널에서 실행 중인 프로세스의 소스 폴더를 알 수 있는지 궁금합니다.
즉
pyjournal1/source/script.py
, ,pyjournal2/source/script.py
및 3개의 폴더에서 Python 스크립트를 실행하고 있습니다.pyjournal3/source/script.py
- 내가 보니
htop
그것들은 모두 똑같아 보였습니다. "python3 script.py
" 그러나 어느 것인지 식별할 수 없었습니다. realpath
readlink
아시다시피 of는 나에게 "호출 폴더" 경로가 아닌 Python 경로를 제공했습니다.
어떤 아이디어가 있나요?
정말 고마워요, 에드워드
답변1
먼저 프로세스의 PID를 가져옵니다.
$ pgrep <proccess>
그런 다음 pwdx를 사용할 수 있습니다.
$ pwdx <PID>
이것/proc
방법exe
pid에 해당하는 디렉토리의 링크가 검사됩니다 .
예를 들어 보겠습니다 update-notifier
.
pid를 찾으십시오.15421이 예에서는 다음과 같습니다.
egil@gud:~$ ps x | grep update-notifier
2405 pts/4 S+ 0:00 grep update-notifier
15421 ? Sl 0:00 update-notifier
심볼릭 링크 찾기:
egil@gud:~$ file /proc/15421/exe
/proc/15421/exe: symbolic link to `/usr/bin/update-notifier'