2개의 터미널이 열려있습니다. 제1터미널에서는 당연히 bash
달리고 또 달리죠 xlogo
. 이것을 xlogo
입력하면 ps T o user,pid,tty,args,ppid
다음과 같은 결과가 나타납니다.
USER PID TT COMMAND PPID
shahzeb 2526 pts/3 bash 2248
shahzeb 2762 pts/3 xlogo 2526
shahzeb 3152 pts/3 ps T o user,pid,tty,args,pp 2526
하지만 터미널 2에서 이 작업을 수행하면 xlogo
다른 pid를 가진 bash가 나열되지 않습니다.
제 질문은 어떻게 터미널 2에 무언가를 입력하고 bash
터미널 1의 프로세스가 해당 프로세스의 상위 프로세스인지 확인하는 것 xlogo
입니다.
답변1
기본적으로 이 ps
명령은 현재 사용자와 동일한 유효 사용자 ID를 갖고 호출자와 동일한 터미널에 연결된 모든 프로세스에 대한 정보를 인쇄합니다. 그렇기 때문에 터미널 2에서 실행할 때 xlogo
상위 프로세스를 볼 수 없습니다.bash
기본 동작의 범위를 벗어나는 내용을 보려면 추가 매개변수를 전달하여 ps
해당 동작을 변경해야 합니다. 한 가지 옵션은 이 옵션을 사용하는 것입니다 -A
(예: ) ps -A T o user,pid,tty,args,ppid
.