세션 초기화

세션 초기화

나는 종종 같은 일을 하고 있는 자신을 발견합니다 tmux.

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

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

답변1

Archwiki가 세상을 구합니다!세션 초기화tmux 페이지에 예제가 나와 있습니다.

즉, tmux를 tmux로 시작하는 대신 tmux세션 tmux new -s name에 숫자가 부여되는 대신 시작 시 이름이 지정됩니다.

세션 초기화


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

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

분할 창(여러 창)으로 세션을 시작하려면 neww 아래에 분할 명령을 포함하십시오.

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

2개의 창이 열리며, 그 중 두 번째 창의 이름은 foo/bar로 지정되고 foo가 막대 위에서 실행되면서 세로로 절반(50%)으로 분할됩니다. 창 2(foo/bar)의 상단 창(foo)에 초점이 맞춰집니다.

참고: .conf에서 기본 인덱스를 1로 지정하지 않는 한 세션, 창 및 창 번호 지정은 0부터 시작됩니다.

여러 세션을 관리하려면 conf 파일에서 별도의 세션 파일을 가져옵니다.

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

답변2

롭스답변좋습니다. tmux 자체에서 세션을 처리하는 방법을 정확하게 설명합니다. 이제 타사 도구를 사용해도 괜찮다면tmuxator도움이 될 수 있는 훌륭한 프로젝트입니다쉽게 세션 생성 및 관리.

각 세션은 모든 창과 창, 해당 레이아웃, 그 안에서 실행되는 기본 명령을 정의할 수 있는 구성 파일에 의해 제어됩니다. 또한 기본 프로젝트 디렉터리, 특정 소켓, 실행해야 하는 데몬(예: mysql)을 정의할 수 있습니다. 게다가 연결하기 쉬운 방법도 제공합니다. 실행하기만 mux [session-name]하면 세션이 시작되거나 연결됩니다(이미 실행 중인 경우). 오랫동안 사용해 왔는데 정말 마음에 듭니다(감사합니다)아지즈! ).

https://github.com/aziz/tmuxinator

관련 정보