![TMUX를 사용하여 새 창을 만들고 해당 창에서 명령을 실행하는 방법](https://linux55.com/image/167948/TMUX%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%EC%83%88%20%EC%B0%BD%EC%9D%84%20%EB%A7%8C%EB%93%A4%EA%B3%A0%20%ED%95%B4%EB%8B%B9%20%EC%B0%BD%EC%97%90%EC%84%9C%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%8B%A4%ED%96%89%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
나는 이것을 매우 가까이에 가지고 있습니다 :
tmux new -d -s "$session_uuid"
tmux send-keys -t "${session_uuid}.0" "tsc -w" ENTER
tmux send-keys -t "${session_uuid}.0" "nodemon" ENTER
tmux attach -t "$session_uuid"
우선, .0이 무엇인지 잘 모르겠습니다. 그게 창 ID인가요?
내가 하고 싶은 일은 두 개의 수직 창을 나란히 만들고 tsc -w
왼쪽 창과 오른쪽 창 nodemon
에서 실행하는 것입니다 . 이 작업을 수행하는 방법을 아는 사람이 있나요?
답변1
대상은 session:window.pane이므로 for 는 창 번호 session.0
이지만 0
새 세션에는 창이 하나뿐이므로 필요하지 않습니다. 세션 이름만 있으면 충분합니다(tmux가 알고 있는지 확인하려는 경우). 이것이 세션입니다).
split-window
다음을 사용하여 창을 두 개의 창으로 분할 해야 합니다 .
tmux new -d -s "$session_uuid" "tsc -w"
tmux splitw -t "$session_uuid:" -dh "nodemon"
tmux attach -t "$session_uuid"
프로그램을 종료하고 셸로 돌아가려면 send-keys
예제와 같이 사용하고 .1
두 번째 창을 send-keys
두 번째 창에 배치합니다(첫 번째 창에서는 창에 창이 하나만 있으므로 필요하지 않음). :
tmux new -d -s "$session_uuid"
tmux send -t"$session_uuid:" "tsc -w" Enter
tmux splitw -t "$session_uuid:" -dh
tmux send -t"$session_uuid:.1" "nodemon" Enter
tmux attach -t "$session_uuid"
tmux가 세션 이름을 할당하도록 하려면 -P
.
S=$(tmux new -dP "tsc -w")
tmux splitw -t$S -dh "nodemon"
tmux attach -t$S