최대 절전 모드인 특정 쉘 스크립트의 PID를 찾는 방법은 무엇입니까?

최대 절전 모드인 특정 쉘 스크립트의 PID를 찾는 방법은 무엇입니까?

나는 이것을 사용하여 스크립트의 PID를 찾을 수 있다는 것을 알고 있지만 pgrep -fl example.sh다음과 같은 경우에는 example.sh작동하지 않습니다 .example.sh

(while true; do
  sleep 5
done) &

./example.sh그런 다음 실행하면 pgrep -fl example.sh입력이 반환되지 않습니다. example.sh잠자는 동안 PID를 어떻게 찾나요 ?

답변1

example.sh스크립트가 즉시 종료되는 것을 눈치챘을 것입니다 . 이 경우 sleep명령이 를 통해 백그라운드로 전송되기 때문입니다 &.

sleep스크립트는 다음 명령을 순서대로 실행하기 전에 완료될 때까지 기다리지 않습니다 .

sleep이 경우 예상대로 작동하지 않습니다(지연).

sleep백그라운드에서 실행할 이유가 전혀 없습니다 .


노트: pgrep -fl processnamePID뿐만 아니라 프로세스 이름도 출력됩니다.

 -f, --full
              The pattern is normally only matched against the process name.  When -f is set, the full command line is used.
-l, --list-name
              List the process name as well as the process ID.  (pgrep only.)

관련 정보