Multiplexador de terminal para Microsoft Windows - Instaladores para GNU Screen ou tmux [fechado]


122

Estou procurando um multiplexador de terminal para o Microsoft Windows. Não consegui localizar os instaladores do Microsoft Windows para o tmux e o GNU Screen.

Atualmente, estou usando o Putty para conectar-me à minha máquina Linux a partir da Máquina Windows. Alguém pode sugerir como fazer com que o GNU Screen ou tmux funcione na plataforma Windows.

Existem outras boas alternativas para as opções acima.


O que exatamente você está tentando fazer?
Thkala # 29/11

3
Eu preciso de um multiplexador de terminal que possa gerenciar muitas janelas de sessão e fornecer recursos de persistência também.
Kamaal

1
o que impede você de executar a tela na caixa Linux e simplesmente desconectar (ou fechar à força) a conexão toda vez? Isso também não atenderia aos seus requisitos? Usei-o via Cygwin, mas sinceramente sempre voltei a ter uma caixa Linux separada ou uma VM na máquina Windows que executasse um Linux adequado e me oferecesse o que eu precisava.
0xC0000022L 29/03

1
[Superusuário] [1] recomenda usuários do Console2 para Windows. [1]: superuser.com/a/419616/92406
gliptak 11/12/12

Respostas:


91

Veja. Isso é muito antigo, mas com a chance de alguém do Google encontrar isso, absolutamente a melhor solução para isso - ( e é IMPRESSIONANTE ) - é usar o ConEmu (ou um pacote que inclui e é construído sobre o ConEmu chamado cmder ) e use plink ou putty para conectar-se a uma máquina específica ou, melhor ainda, configure um ambiente de desenvolvimento como uma VM local usando o Vagrant .

Esta é a única maneira que me vejo desenvolvendo a partir de uma caixa do Windows novamente.

Estou confiante o suficiente para dizer que todas as outras respostas - embora não necessariamente ruins - oferecem soluções de lixo em comparação com isso.

Atualização : a partir de 1/8/2020, nem todas as outras soluções são lixo - o Windows Terminal está chegando lá e o WSL existe.


1
A) Em relação ao Vagrant: Sim, o Vagrant facilita muito mais do que costumava ser instalar rapidamente uma VM Linux em uma máquina Windows. Observe que talvez o OP não queira uma VM Linux: por exemplo, talvez ele esteja com pouca memória RAM.
unforgettableidSupportsMonica

11
B) Em relação ao ConEmu: Cygwin, tmux e ssh são tudo o que você precisa. Tmux e ssh funcionam da mesma maneira em todas as plataformas: Cygwin, Linux, Mac e outros. O ConEmu, por outro lado, é um multiplexador de terminal somente para Windows. Mesmo quando você se acostumar, seu conhecimento não será traduzido para outros sistemas operacionais. Você parece estar sugerindo que o ConEmu é melhor que o tmux; mas quanto tempo você já passou usando o tmux?
unforgettableidSupportsMonica

1
Para uma boa introdução ao Tmux: http://www.sitepoint.com/tmux-a-simple-start/ Quando eles dizem CTRL + B%, digite apenas o mesmo CTRL + B e pressione Shift + 5 (que é o tecla no meu teclado que possui o símbolo%).
Edenshaw # 7/16

Não, a resposta sobre o uso do Cygwin não é lixo. E putty / conemu é tão feio de se trabalhar.
Jose V

77

A partir da atualização de "Aniversário" do Windows 10 (Versão 1607), agora você pode executar um subsistema Ubuntu diretamente dentro do Windows, ativando um recurso chamado modo Desenvolvedor .

Para ativar o modo de desenvolvedor, vá em Iniciar > Configurações e digite "Usar recursos do desenvolvedor" na caixa de pesquisa para encontrar a configuração. Na navegação esquerda, você verá uma guia intitulada Para desenvolvedores . A partir dessa guia, você verá uma caixa de opções para ativar o modo Desenvolvedor .

Depois que o modo de desenvolvedor estiver ativado, você poderá ativar o recurso do subsistema Linux. Para fazer isso, vá para Painel de controle > Programas > Ativar ou desativar recursos do Windows > e marque a caixa que diz Windows Subsystem for Linux (Beta)

Agora, em vez de usar o Cygwin ou um emulador de console, você pode executar o tmux através do bash no subsistema Ubuntu diretamente do Windows através do pacote tradicional apt ( sudo apt-get install tmux).


4
Eu acredito que esta resposta deve ser a correta: thumb-up :.
Ahed Eid


Existem implicações de segurança para fazer isso?
precisa saber é

1
Certifique-se de executar o Tmux dentro da WSL, mas ele não executará seus aplicativos do Windows, é necessário reinstalá-los, mas desta vez dentro da WSL para executá-los dentro da WSL. Se você só vai usar o WSL para ssh, isso provavelmente não será um problema, mas é irritante. Outros inconvenientes incluem a WSL com seu próprio sistema de arquivos, que você não pode ver no Windows, mesmo que o WSL possa ver o sistema de arquivos do Windows. Etc
Jose V

44

O tmux e o GNU Screen funcionam sob o cygwin . Eles podem ser instalados a partir do instalador do cygwin. Basta procurar o nome deles e você provavelmente chegará à versão mais recente (pelo menos para o tmux ).


5
O Tmux corre bastante devagar no Cygwin.
adam

Este! Obtenha o Msys2, um garfo Cygwin com suporte para MinGW-w64 e outras coisas do Windows. Eu uso o Zshell com Powerlevel10k e é o mais rápido possível, muito bonito e funciona tão bem quanto o tmux.
Jose V

8

Você pode conseguir o que deseja usando o Console2 com Putty ou Plink.


1
Posso acrescentar isso, se você usar a versão 1.5.x do console, poderá configurar janelas separadas sem bordas e guias. Você também pode configurar facilmente a largura, altura e posicionamento. Em resumo, crie várias janelas e coloque-as na área de trabalho.
Rex Whitten

2
nem chegará nem perto do que um verdadeiro multiplexador de terminal faz. operação sem rato? tela cheia um painel com 2 pressionamentos de tecla? várias guias de layouts de vários painéis? copiar sem cola colar? alternar o layout do painel em uma guia de layout? rolagem sem rato? painel sem mouse redimensionar? pré-configurar espaços de trabalho com várias guias / layouts de painel e entrar e sair das sessões do espaço de trabalho? emparelhamento remoto? tudo isso com no máximo 2 pressionamentos de tecla e sem mouse?
Cosmin


6

Uma das alternativas é o MSYS2 , ou seja, "MinGW-w64" / Git Bash . Você pode simplesmente ssh para máquinas Unix e executar a maioria dos comandos linux a partir dela. Instale também o tmux !

Para instalar o tmux no MSYS2 :

comando de execução pacman -S tmux

Para executar o tmux no Git Bash :

instale o MSYS2 e copie tmux.exee msys-event-2-1-6.dllda pasta MSYS2C:\msys64\usr\bin para o diretório Git BashC:\Program Files\Git\usr\bin .


os links simbólicos funcionam, portanto, se você atualizar o msys2 side git bash, usará os arquivos mais recentes. do bash git /c/Program Files/Git/usr/binisso funcionou para mim agora:$ ln -s /c/msys64/usr/bin/tmux.exe . ; ln -s /c/msys64/usr/bin/msys-event-2-1-6.dll .
Grant Bowman

Achei este post útil
Grant Bowman

5

Como alternativa, o SuperPutty possui guias e a opção de executar o mesmo comando em muitos terminais ... pode ser o que alguém está procurando.

https://code.google.com/p/superputty/

Também importa suas sessões PuTTY.


2

Aqui está o caminho sujo:

  1. Entre em um servidor linux usando "ssh -X user @ host"
  2. abra o rxvt-unicode ou outro terminal X.
  3. tmux aberto ou tela
  4. Efetue login novamente no computador local a partir do servidor
  5. inicie seu shell favorito como msys ou cygwin.

4
se parece estúpido e ele funciona não é lol estúpido
Hobroker

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.