명령 프롬프트에서 스크립트가 시작되면 셸은 해당 스크립트의 하위 프로세스를 생성합니다. 터미널 ps
스타일 프로세스와 자식 사이의 관계를 트리 스타일 출력으로 사용하고 싶습니다 .
어떻게해야합니까?
내가 지금까지 시도한 것
파일: script.sh
#!/bin/bash
ps -f -p$1
그런 다음 터미널 쉘의 프로세스 ID를 전달하는 명령 줄에서 스크립트를 호출합니다.
$ ./script.sh $$
내가 원하는 것은 이런 것입니다
- 최상위 (터미널) 쉘 프로세스
- ./script.sh
ps
명령 자체 처리
USER PID [..]
ubuntu 123 -bash
ubuntu 1234 \_ bash ./script.sh
ubuntu 12345 \_ ps auxf
내가 얻는 것 :
PID TTY STAT TIME COMMAND
14492 pts/24 Ss 0:00 -bash
@muru 나는 노력했지만
—
the_velour_fog
pstree
의미있는 결과물을 얻을 수 없었 습니다. 나는 내가 원하는 것을 정확하게 pstree $$
생산 bash--pstree
하지 못했다고 생각 합니다.
당신이 찾고있는 것이 아닌가? 스크립트를 교체
—
muru
ps
했으므로 제외하고 무엇을 기대 pstree
하십니까?
@muru는 기술적으로 내가 원했던 것이지만 너무 작습니다. 즉 ps와 같은 PID없이보고있는 프로세스가 테이블 출력을 어떻게 알 수 있는지 어떻게 알 수 있습니까?
—
the_velour_fog
pstree -p $$
? 또는 더 많은 명령 줄 표시를 원하면 pstree -pa $$
. 또는 모든 상위 프로세스가 표시되도록하려면 pstree -psa $$
.
pstree
않습니까?