나는 그것을 사용하고 있다화면Debian lenny에서는 이 옵션을 사용하고 싶습니다 -R
. 에서 man screen
:
-R attempts to resume the youngest (in terms of creation time)
detached screen session it finds. If successful, all other com‐
mand-line options are ignored. If no detached session exists,
starts a new session using the specified options, just as if -R
had not been specified.
그러나 실행하면 screen -R
실제로 가장 최근에 분리된 세션에 연결되지 않습니다. 대신에 "적절한 화면이 여러 개" 있고 그 중 하나를 선택해야 한다고 불평했습니다.
내가 뭐 놓친 거 없니? 어떻게 하면 광고대로 작동하게 할 수 있나요?
답변1
을 사용해 보세요 screen -RR
.
예:
$ screen -ls
There are screens on:
5958.pts-3.sys01 (08/26/2010 11:40:43 PM) (Detached)
5850.pts-1.sys01 (08/26/2010 11:40:35 PM) (Detached)
2 Sockets in /var/run/screen/S-sdn.
화면 5958이 가장 젊습니다. screen -RR
화면 5958에 연결을 사용하세요 . 이러한 -RR
옵션은 설명서에 자세히 설명되어 있습니다 -d -RR
.
-d -RR Reattach a session and if necessary detach or create it. Use
the first session if more than one session is available.
제가 자주 사용하는 또 다른 트릭은 -S
화면에 라벨을 붙이는 것입니다. 그런 다음 목록을 관리할 수 없게 되면 각 화면에서 발생한 일을 기억할 필요 없이 해당 레이블을 사용하여 다시 연결할 수 있습니다.
예(vim 및 컬 시작 화면):
$ screen -dm -S curl
$ screen -dm -S vim
$ screen -list
There are screens on:
11292.vim (08/27/2010 12:02:53 AM) (Detached)
11273.curl (08/27/2010 12:01:42 AM) (Detached)
참고: 이 -dm
옵션은 분할 화면을 실행하는 데에만 사용됩니다.
그런 다음 나중에 태그를 사용하여 쉽게 다시 연결할 수 있습니다 curl
.
# screen -R curl
답변2
저는 gnome-terminal에서 screen -R을 사용하고 말씀하신 대로 2개의 세션이 동시에 실행 중이면 gnome-terminal이 즉시 종료됩니다.
나는 실행하여 문제를 해결했습니다.
sh -c "screen -R || screen -D -RR"
이는 예상대로 작동합니다.