일부 디렉토리에서 시작하라는 명령을 내렸지 만 시뮬레이션을 명령 한 디렉토리를 기억하지 않습니다. 시뮬레이션을 실행하기 위해 파이썬을 사용하고 있습니다.
ps aux | grep PID
실행중인 프로그램의 위치 만 표시합니다. (/ usr / bin / python). 그러나 실행중인 파일이있는 초기 지점에서 명령이 어디에서 작동하는지 알고 싶습니다.
유용한 의견을 보내 주셔서 감사합니다.
감사 :)
일부 디렉토리에서 시작하라는 명령을 내렸지 만 시뮬레이션을 명령 한 디렉토리를 기억하지 않습니다. 시뮬레이션을 실행하기 위해 파이썬을 사용하고 있습니다.
ps aux | grep PID
실행중인 프로그램의 위치 만 표시합니다. (/ usr / bin / python). 그러나 실행중인 파일이있는 초기 지점에서 명령이 어디에서 작동하는지 알고 싶습니다.
유용한 의견을 보내 주셔서 감사합니다.
감사 :)
답변:
아마도 history
명령 을 사용하여 실제로 사용한 명령을 확인 하고 싶 습니까?
파이썬 스크립트의 경로를 보려면 일반적으로 ps
( w
필요한 경우, wide, 옵션 사용)을 사용하여 볼 수 있습니다 .
~% ps ugxw | grep python
romano 2136 0.0 0.2 10524 4132 ? S 09:13 0:00 python /home/romano/software/wallpap/bg_slideshow.py
romano 5839 0.0 0.0 4440 832 pts/1 S+ 10:00 0:00 grep python
예를 들어, 프로세스 2136은 스크립트 /home/romano/software/wallpap/bg_slideshow.py
입니다. 프로세스의 작업 디렉토리를 알고 싶다면
~% ls -l /proc/2136/cwd
lrwxrwxrwx 1 romano romano 0 Nov 11 10:04 /proc/2136/cwd -> /home/romano
프로세스가 /home/romano
현재 디렉토리로 실행 중입니다 .
파일 /proc/2136/cmdline
에는 ps
명령어와 인수가 0 값 바이트로 구분되어 공백을 유지하기 위해 전체 명령 행 사양 이 있습니다. 당신은 당신의 터미널에서 볼 수 있습니다
% cat /proc/2136/cmdline | tr "\0" " "
python /home/romano/software/wallpap/bg_slideshow.py %
여기서 "tr"은 찾은 "nul"문자마다 공백을 인쇄합니다. (마지막 스퓨리어스 %는 파일이 개행 문자로 끝나지 않기 때문입니다).
/ proc 파일 시스템은 정말 유용한 도구입니다. 전체 문서는 약간 "단단하지만"링크가있는 것이 좋습니다 : https://www.kernel.org/doc/Documentation/filesystems/proc. txt