Como fechar uma sessão tmux


64

Estou usando o tmux para gerenciar várias janelas de terminal. Atualmente, tenho 2 janelas abertas com vários painéis. Eu sei que tenho que usar o prefixo (para mim é ctrl+ a) para inserir comandos.

Como posso fechar a sessão de dentro do tmux? Qual comando fecharia a sessão (todas as janelas e painéis) e o tmux ao mesmo tempo?


Para desanexar do tmux (deixando o processo em execução): unix.stackexchange.com/a/174443/178412
atomh33ls

Respostas:


86

Pressione seu prefixo (por exemplo, Ctrl+ Aou B, que é o padrão) e , em seguida, :digite e kill-session, em seguida, pressione Enter. Isso, como o nome do comando sugere, mata a sessão.


33

Se você deseja fechar outra sessão que não a atual (e, portanto, manter o tmux em execução; fechando a sessão atual como na resposta de @ 0xC0000022L, também fecha o tmux, mesmo que outras sessões estejam disponíveis), faça o seguinte em uma das janelas do tmux:

# tmux ls
keepMe: 1 windows (created Wed Jun 24 14:20:15 2015) [171x41]
otherSession: 1 windows (created Wed Jun 24 14:22:01 2015) [171x41]
3: 1 windows (created Wed Jun 24 14:23:28 2015) [171x41]

(assuming here that you're on keepMe session)
# tmux kill-session -t otherSession
-or-
# tmux kill-session -t 3

Isso exclui a "otherSession" ou a sessão número 3 e deixa o tmux em execução, assumindo que você não tenha a sessão "otherSession" ou número 3 selecionada quando você as excluiu.


1
Ou, se você preferir usar seu prefixo, ctrl + prefixseguido de :e digite kill-session -t nameou kill-session -t number. Se você fizer isso de dentro da sessão, você deseja cancelar a conexão novamente tmux a.
Matijs

19

Prefixo TMUX (por exemplo, ctrl+ b) +:kill-session

ou

tmux kill-session (pode ser executado de dentro de uma sessão ou de fora)

Ambos os estilos de chamada podem usar os sinalizadores:

-t target-sessiondestrói a sessão especificada
-adestrói todas as sessões, exceto a determinada ou aquela à qual você está anexado

A execução kill-sessionde fora do TMUX mata a última sessão à qual você estava conectado. -ainverte isso.

No evento, que tem mais de uma sessão de corrida você poderia matar todas as sessões de uma vez com: kill-server.


Isso é semelhante à resposta atualmente aceita. Você pode entrar em um pouco mais de detalhes sobre por que sua resposta é diferente?
Burgi

1
Ninguém apontou que você poderia fechar todas as sessões com o kill-servercomando Também gostei de fornecer um pouco mais de profundidade sobre as bandeiras kill-session.
FSchndr

+1: Essa resposta também é a única que ajuda -aa destruir todas as outras sessões.
AaronDanielson #

Essa é a melhor resposta. Eu gostaria que isso fosse no topo das respostas ...
Blaszard
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.