Microsoft Windows 的终端复用器 - GNU Screen 或 tmux 的安装程序

136

我正在寻找适用于Microsoft Windows操作系统的终端复用工具。但我无法找到适用于Windows平台的tmux和GNU Screen安装程序。

目前,我使用Putty在Windows机器上连接到Linux机器。请问有没有人能建议如何在Windows平台上运行GNU Screen或tmux?

除了上述选项,还有其他好用的替代品吗?


你究竟想要做什么? - thkala
5
我需要一个终端复用程序,它可以管理多个会话窗口并提供持久性功能。 - Kamaal
1
是什么阻止你在Linux上运行screen并每次分离(或强制关闭)连接?那样不也能满足你的要求吗?我曾经通过Cygwin使用过它,但坦白地说,我总是回到了要么有一个单独的Linux机器,要么在Windows机器上运行一个VM来运行Linux,并为我提供所需的功能。 - 0xC0000022L
2
超级用户 推荐 Console2 给 Windows 用户使用。 - gliptak
9个回答

104

看这里。虽然这很老旧,但如果有人从Google找到这个-(而且它是了不起的)-最好的解决方案是使用ConEmu(或包含并构建在ConEmu之上的软件包cmder),然后使用plink或putty本身连接到特定机器,或者更好的是,使用Vagrant设置一个开发环境作为本地VM。

这是我唯一能想到的可以再次从Windows盒子中开发的方式。

我有信心说,每个其他答案-虽然不一定是坏答案-与此相比都是垃圾解决方案。

更新:截至2020年1月8日,并非所有其他解决方案都是垃圾 - Windows终端正在努力,而WSL存在。


1
关于Vagrant:是的,Vagrant使得在Windows机器上快速安装Linux虚拟机比以前容易多了。请注意,也许OP并不想要一个Linux虚拟机:例如,也许他的内存很少。 - unforgettableidSupportsMonica
12
关于ConEmu:你只需要Cygwin、tmux和ssh。Tmux和ssh在所有平台上都工作相同:Cygwin、Linux、Mac等等。另一方面,ConEmu是专门用于Windows的终端复用软件。即使你习惯了它,你的知识也无法在其他操作系统中使用。你似乎在暗示ConEmu比tmux更好;但你有多长时间使用过tmux呢? - unforgettableidSupportsMonica
1
关于Tmux的简单介绍,请参考:http://www.sitepoint.com/tmux-a-simple-start/ 当他们说CTRL + B %时,只需同时按下CTRL + B,然后再按Shift + 5(在我的键盘上是%符号的键)。 - Edenshaw
不,关于使用Cygwin的答案并不是垃圾。而且putty/conemu使用起来非常丑陋。 - Jose V

82
自从 Windows 10 "Anniversary" 更新(版本1607)之后,您现在可以通过启用一个名为“开发人员模式”的功能,在 Windows 中直接运行 Ubuntu 子系统。
要启用开发人员模式,请转到“开始”>“设置”,然后在搜索框中键入“使用开发人员功能”以查找该设置。在左侧导航中,您将看到一个名为“面向开发人员”的选项卡。在此选项卡中,您将看到一个单选框,用于启用“开发人员模式”。
启用开发人员模式后,您将能够启用 Linux 子系统功能。要这样做,请转到“控制面板”>“程序”>“打开或关闭Windows功能”,然后勾选“适用于Linux的Windows子系统 (Beta)”复选框。
现在,您可以通过传统的 apt 包(`sudo apt-get install tmux`)直接从 Windows 通过 Ubuntu 子系统上的 bash 运行 tmux,而不是使用 Cygwin 或控制台模拟器。

4
我相信这个答案应该是正确的 👍。 - Ahed Eid
1
https://www.howtogeek.com/249966/how-to-install-and-use-the-linux-bash-shell-on-windows-10/ - Mzq
这样做是否存在任何安全隐患? - leeand00
4
确保您将在WSL内运行Tmux,但它不会运行您的Windows应用程序,您必须重新安装它们,但这次是在WSL内部以便从WSL内部运行它们。如果您只打算使用WSL进行ssh,则可能不会有问题,但这很烦人。其他不便之处包括WSL拥有自己的文件系统,您无法从Windows查看它,即使WSL可以查看Windows文件系统等。 - Jose V

43

cygwin下,tmuxGNU Screen都可以运行。它们可以直接从cygwin安装程序中安装。只需要在那里搜索它们的名称,您可能会获得最新版本(至少针对tmux)。


5
在Cygwin中,Tmux 运行非常缓慢。 - adam
获取Msys2,它是一个支持MinGW-w64和其他Windows工具的Cygwin分支。我使用带有Powerlevel10k的Zshell,速度非常快,非常漂亮,并且与tmux一样好用。 - Jose V
cygwin != "适用于Windows" - monokrome

9

其中一种选择是MSYS2,换句话说就是"MinGW-w64"/Git Bash。您可以简单地通过ssh连接到Unix机器,并从中运行大多数linux命令。还要安装tmux

MSYS2中安装tmux:

运行命令pacman -S tmux

Git Bash上运行tmux:

安装MSYS2并将tmux.exemsys-event-2-1-6.dllMSYS2文件夹的C:\msys64\usr\bin复制到您的Git Bash目录的C:\Program Files\Git\usr\bin


符号链接起作用,因此如果您升级msys2侧Git Bash将使用更新的文件。从Git Bash中/c/Program Files/Git/usr/bin,这对我刚才起作用:$ ln -s /c/msys64/usr/bin/tmux.exe .; ln -s /c/msys64/usr/bin/msys-event-2-1-6.dll. - Grant Bowman
我发现这篇博客文章很有帮助。 - Grant Bowman

8
你可以使用Putty或Plink中的Console2来获得所需内容。

1
我可以补充一下,如果你使用控制台的1.5.x版本,你可以配置没有边框和选项卡的单独窗口。你还可以轻松地配置宽度、高度和位置。简而言之,创建多个窗口并在桌面上平铺它们。 - Rex Whitten
2
甚至不能接近真正的终端复用器所做的事情。无鼠标操作?两个按键全屏一个窗格?多个窗格布局的多个选项卡?无鼠标复制粘贴?在布局选项卡内切换窗格布局?无鼠标滚动?无鼠标窗格调整大小?预配置带有多个选项卡/窗格布局的工作区,并跳进和跳出工作区会话?远程配对?所有这些都最多使用 2 个按键,没有鼠标? - Cosmin

6

跟帖中,有一种名为babun的新控制台,我在其中运行tmux没有问题,它让你可以运行bash或zsh。

点击此处查看github


5
作为一种替代方案,SuperPutty 具有选项卡和在多个终端上运行相同命令的选项... 这可能是某些人正在寻找的。

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

它还可以导入您的 PuTTY 会话。


2

以下是一种不太规范的方法:

  1. 使用 "ssh -X user@host" 登录到 Linux 服务器
  2. 打开 rxvt-unicode 或其他 X 终端。
  3. 启动 tmux 或 screen
  4. 从服务器重新登录本地计算机
  5. 启动您喜欢的 shell,例如 msys 或 cygwin。

7
如果看起来很蠢但能有效地完成任务,那它并不蠢lol。 - Hobroker

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接