GNU 화면 세션간에 창 이동 해 보겠습니다. screen -S screen1 vim *.cpp C-a d screen -S

다른 화면 세션간에 창을 이동하는 방법이 있습니까?

예를 들어이 시나리오가 있다고 가정 해 보겠습니다.

screen -S screen1
vim *.cpp
C-a d
screen -S screen2

vim 세션을 포함하는 쉘을 screen1에서 screen2로 옮기는 방법이 있습니까?



답변

injcode를 사용하여 tty 사이에서 프로세스를 이동할 수 있습니다. 대상 화면 창에서 PID 실행으로 프로세스를 이동하려면 :

$ injcode -m retty PID

그러나 부모 화면 세션을 닫으면 이동 된 프로세스도 종료됩니다.

편집 : 내가 틀렸다, 작동합니다. 모든 것이 여기 에 설명되어 있습니다 . “중지”를 이동하고 하나의 인스턴스 만 실행한다고 가정하십시오.

$ injcode -m retty $(pgrep htop)
$ pkill -SIGSTOP htop
$ pkill -SIGCONT htop

그런 다음 이전 쉘 유형에서

$ disown