화면에 실행 중인 스크립트가 있는지 원격으로 확인

화면에 실행 중인 스크립트가 있는지 원격으로 확인

test.sh(GNU screen)이라는 화면에서 스크립트가 실행되고 있는지 확인하고 싶습니다 testscreen.
이 작업을 여러 서버에 걸쳐서 해야 하기 때문에 SSH를 통해 원격으로 하고 싶습니다.

for serverid in {1..100}; do ssh root@server${serverid} "command"

이라는 화면에서 스크립트가 실행 중인지 command확인하는 방법은 무엇입니까 ?test.shtestscreen

답변1

사용

screen -Q windows

각 창에서 시작되는 명령을 포함하여 창을 나열할 수 있습니다.

특정 세션을 확인하려면

screen -S testscreen -Q windows

특정 명령이 존재하는지 테스트하려면 다음을 수행하십시오 test.sh.

screen -S testscreen -Q windows | grep -E '^[[:digit:]]+[[:space:]]+test\.sh$'

(이것은 창 제목입니다)

그냥 이것을 실행하십시오 ssh:

for serverid in {1..100}; do 
  ssh root@server${serverid} screen -S testscreen -Q windows \
    | grep -q -E '^[[:digit:]]+[[:space:]]+test\.sh$' \
    && echo "command running!" \
    || echo "not running!"
done

관련 정보