실행 가능한 TMUX 구성을 작성 하시겠습니까?


24

나는 종종 다음과 같은 일을하고 있음을 발견했다 tmux.

  1. cd 주어진 디렉토리에.
  2. tmux
  3. 창을 내가하고있는 일로 바꿉니다.
  4. 창을 세로로 50 % 분할하십시오.
  5. 왼쪽 창에서 하나의 프로세스를 시작하십시오.
  6. 오른쪽 창에서 다른 프로세스를 시작하십시오.
  7. 이익.

단일 명령을 실행하고 원하는 창을 얻을 수 있도록이 모든 것을 자동으로 시작하는 방법이 있습니까?


쉘 별명은 어떻습니까?
Marco

답변:


22

Archwiki는 하루를 저장합니다! tmux 페이지의 세션 초기화 에 예가 있습니다.

말했다 대신으로 TMUX 시작하는 tmux, tmux new -s name대신 그것에게 수를주는 시작할 때 세션의 이름을 지정합니다.

세션 초기화


~ / .tmux.conf에 세부 정보를 포함시켜 tmux가 미리로드 된 창으로 세션을 열도록 할 수 있습니다.

new  -n WindowName Command
neww -n WindowName Command
neww -n WindowName Command

분할 창 (여러 창)으로 세션을 시작하려면 분할하려는 새 항목 아래에 splitw 명령을 포함하십시오. 그러므로:

new  -s SessionName -n WindowName Command
neww -n foo/bar foo
splitw -v -p 50 -t 0 bar
selectw -t 1 
selectp -t 0

두 개의 창을 열면 두 번째 창은 foo / bar로 이름이 지정되고 foo는 bar 위에서 실행되면서 세로로 반 (50 %)으로 분할됩니다. 초점은 창 2 (foo / bar), 상단 창 (foo)에 있습니다.

참고 : .conf에 기본 색인을 1로 지정하지 않은 경우 세션, 창 및 창 번호는 0에서 시작합니다.

여러 세션을 관리하려면 conf 파일에서 별도의 세션 파일을 소싱하십시오.

# initialize sessions
bind F source-file ~/.tmux/foo
bind B source-file ~/.tmux/bar

6

Rob의 답변 은 훌륭하며 tmux 자체에서 세션을 처리하는 방법을 정확하게 설명합니다. 이제 타사 도구를 사용하는 것이 마음에 들지 않으면 tmuxinator세션을 쉽게 만들고 관리 할 수 있는 훌륭한 프로젝트입니다 .

각 세션은 모든 창과 창을 해당 창에서 실행할 레이아웃 및 기본 명령과 함께 정의 할 수있는 구성 파일로 제어됩니다. 또한 기본 프로젝트 디렉토리, 특정 소켓 및 실행에 필요한 데몬 (예 : mysql)을 정의 할 수 있습니다. 또한 간단하게 실행할 수 있습니다. 간단하게 실행 mux [session-name]하면 세션이 시작되거나 이미 실행중인 경우 연결됩니다. 나는 동안 지금 조금을 위해 그것을 사용하고 그것을 사랑 했어요 (감사 아지즈 !).

https://github.com/aziz/tmuxinator

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.