분할 화면을 만들고 Bash 스크립트에서 명령을 실행하는 방법은 무엇입니까?

분할 화면을 만들고 Bash 스크립트에서 명령을 실행하는 방법은 무엇입니까?

두 번째 명령은 첫 번째 명령이 종료될 때까지 실행되지 않으며 첫 번째 명령을 사용하여 백그라운드에서 실행하려고 하면 다음 명령이 작동하지 않고 &다음 오류가 발생합니다.

먼저 백그라운드에서 실행을 사용해 보았지만 -d -m분할이 작동하지 않았습니다.

터미널에 연결되어 있어야 합니다.

screen -S test -t foo long_lived_process_1
screen -S test -X split
screen -S test -X focus down
screen -S test -X screen -t bar long_lived_process_2

답변1

사용시 screen -S test some command화면을 백그라운드로 보내지 않고 바로 켜줍니다. 따라서 이러한 명령을 실행하는 스크립트가 중지되고 해당 화면에 대해 다음 명령이 실행되지 않습니다.

그래서 먼저 백그라운드로 보낸 다음 다른 명령을 보내야 할 것 같습니다.

screen -S test -d -m top 
screen -S test -X title foo
screen -S test -X split
screen -S test -X focus down
screen -S test -X screen -t bar watch free
screen -S test -R 

일을 시작 하지도 않았고 -S test -d -m -t foo top제목도 잡지 못했지만 어쨌든 첫 번째 창은 특별한 경우였습니다. (더미 객체로 유지하고 마지막에 실행하기로 결정하지 않는 한 -X select 0. -X kill)

에 명령을 넣는 것을 볼 수도 있습니다 screenrc. 매뉴얼 페이지에는 이와 같이 설정하는 예가 있습니다.

관련 정보