wmctrl - 창이 닫힐 때까지 기다립니다.

wmctrl - 창이 닫힐 때까지 기다립니다.

컴퓨터를 종료하고 싶을 때 wmctrl을 사용하여 실행 중인 창을 닫고 있습니다. Eclipse에서 작업 공간을 저장해야 하고 Chrome에서 열린 탭을 잃어버리고 싶지 않기 때문입니다. 나는 그 일을 수행하는 작은 스크립트를 작성했지만 완벽하지는 않습니다. 때로는 창이 정상적으로 닫히지 않아 탭이나 소스 코드의 변경 사항이 손실되는 경우가 있습니다. 창이 닫힐 때까지 wmctrl에게 대기하도록 지시할 수 있는 방법이 있습니까? 내 스크립트는 이제 3초 수면(문제가 있는 줄)에 의존하지만 분명히 좋은 해결책은 아닙니다.

wmctrl -c chrome 
wmctrl -c eclipse 
sleep 3 
poweroff

답변1

당신은 잘못된 질문을하고 있습니다. 창이 닫힐 때까지 기다리지 말고 프로세스가 종료될 때까지 기다리면 됩니다.

다행히도 이는 대답하기 더 쉬운 질문입니다.

while [ -n "$(pidof chrome eclipse)" ]; do
  sleep 1
done

관련 정보