이것이 나를 미치게 만든다:
원격 서버(GCloud)에서 동일한 세션 내에서 4개의 화면 창을 사용하여 4개의 주제를 병렬로 처리하고 싶습니다.
간단히 말해서:
- 먼저 독립형 세션을 만듭니다.
gcloud compute ssh server --command "screen -dmS remoteSession"
- 그런 다음 원격으로 다음 명령을 사용하여 세션에 새 창을 추가하고 프로세스를 시작합니다. 마지막으로
screen -X other
현재 창의 화면을 변경하지 않는 것입니다(분리 모드에서 창을 만드는 것과 유사).
gcloud compute ssh server --command "screen -x remoteSession -X screen -t window1 ping google.com; screen -X other"
*이 예에서는 제가 사용한 거대한 명령 대신 ping 명령을 추가했습니다.
문제는 쉘에 입력하면 작동하지만 스크립트에서는 작동하지 않는다는 것입니다. 그러나 이 작업을 로컬에서 수행할 때는 스크립트에서 작동합니다( 없이 명령을 실행하기만 하면 됩니다 gcloud compute blabla
).
원격 세션이 잘 생성된 것 같습니다. 하지만 두 번째 단계를 실행하면 프롬프트만 표시됩니다 No screen session found
.
어떤 아이디어가 있나요?
답변1
나는 이미 무슨 일이 일어나고 있는지 알고 있습니다.
어떻게 든 세션을 생성하면 에서 생성되지만 /run/screen/S-uname
두 번째 명령을 실행할 때 세션을 찾습니다 (실제로 두 호출 모두에서 사용되지 /run/screen/S-root
않음 ).sudo
나에게 빠른 대답은 sudo를 사용하여 첫 번째 명령을 호출하여 /run/screen/S-root
.
자세한 내용은 다음을 확인하세요.여기
건배!