Bộ ghép kênh đầu cuối dành cho Microsoft Windows - Bộ cài đặt cho Màn hình GNU hoặc tmux [đã đóng]


122

Tôi đang tìm kiếm một bộ ghép kênh đầu cuối cho Microsoft Windows. Tôi không thể tìm thấy trình cài đặt cho Microsoft Windows cho cả tmux và GNU Screen.

Hiện tại, tôi đang sử dụng Putty để kết nối với máy Linux của mình từ Windows Machine. Ai đó có thể vui lòng đề xuất cách để GNU Screen hoặc tmux hoạt động trên Nền tảng Windows không.

Có bất kỳ lựa chọn thay thế tốt nào khác cho các tùy chọn trên không.


Chính xác những gì bạn đang cố gắng để làm?
thkala

3
Tôi cần một bộ ghép kênh đầu cuối có thể quản lý nhiều cửa sổ phiên và cung cấp các tính năng ổn định.
Kamaal

1
Điều gì khiến bạn không chạy màn hình trên hộp Linux và chỉ đơn giản là tách (hoặc buộc đóng) kết nối mỗi lần? Điều đó sẽ không đáp ứng yêu cầu của bạn? Tôi đã sử dụng nó qua Cygwin, nhưng thành thật mà nói, tôi luôn quay lại việc có một hộp Linux riêng biệt hoặc một máy ảo trên máy Windows sẽ chạy Linux thích hợp và cung cấp cho tôi những gì tôi cần.
0xC0000022L

1
[Super user] [1] đề xuất Console2 cho người dùng Windows. [1]: superuser.com/a/419616/92406
gliptak 11/12/12

Câu trả lời:


91

Nhìn. Đây là cách cũ, nhưng nếu ai đó từ Google tìm thấy điều này, thì giải pháp tốt nhất cho điều này - ( và nó TUYỆT VỜI ) - là sử dụng ConEmu (hoặc một gói bao gồm và được xây dựng trên ConEmu được gọi là cmder ) và sau đó sử dụng chính plink hoặc putty để kết nối với một máy cụ thể, hoặc tốt hơn là thiết lập môi trường phát triển như một máy ảo cục bộ bằng cách sử dụng Vagrant .

Đây là cách duy nhất tôi có thể thấy mình phát triển lại từ hộp Windows.

Tôi đủ tự tin để nói rằng mọi câu trả lời khác - mặc dù không nhất thiết là câu trả lời tồi - đều đưa ra các giải pháp rác so với câu trả lời này.

Cập nhật : Kể từ 1/8/2020, không phải tất cả các giải pháp khác đều là rác - Windows Terminal đang đến đó và WSL tồn tại.


1
A) Về Vagrant: Đúng vậy, Vagrant giúp cài đặt nhanh một máy ảo Linux trên máy Windows dễ dàng hơn nhiều so với trước đây . Lưu ý rằng có lẽ OP không muốn có một máy ảo Linux: ví dụ như có lẽ bộ nhớ RAM của anh ta sắp hết.
unforgettableidSupportsMonica

11
B) Về ConEmu: Cygwin, tmux và ssh là tất cả những gì bạn cần. Tmux và ssh hoạt động giống nhau trên tất cả các nền tảng: Cygwin, Linux, Mac và các nền tảng khác. Mặt khác, ConEmu là một bộ ghép kênh đầu cuối chỉ dành cho Windows. Ngay cả khi bạn đã quen với nó, kiến ​​thức của bạn sẽ không chuyển sang các hệ điều hành khác. Có vẻ như bạn đang ngụ ý rằng ConEmu tốt hơn tmux; nhưng bạn đã từng dành bao nhiêu thời gian để sử dụng tmux?
unforgettableidSupportsMonica

1
Để có phần giới thiệu thú vị về Tmux: http://www.sitepoint.com/tmux-a-simple-start/ Khi họ nói CTRL + B%, chỉ cần nhập cùng một CTRL + B, sau đó nhấn Shift + 5 (là phím trong bàn phím của tôi có ký hiệu%).
Edenshaw

Không, câu trả lời về việc sử dụng Cygwin không phải là rác. Và putty / conemu rất xấu để làm việc với.
Jose V

77

Kể từ bản cập nhật Windows 10 "Anniversary" (Phiên bản 1607), giờ đây bạn có thể chạy hệ thống con Ubuntu từ trực tiếp bên trong Windows bằng cách bật một tính năng gọi là Chế độ nhà phát triển .

Để bật chế độ nhà phát triển, hãy đi tới Bắt đầu > Cài đặt rồi nhập "Sử dụng tính năng của nhà phát triển" vào hộp tìm kiếm để tìm cài đặt. Trên điều hướng bên trái, bạn sẽ thấy một tab có tiêu đề Dành cho nhà phát triển . Từ trong tab này, bạn sẽ thấy một hộp radio để bật chế độ Nhà phát triển .

Sau khi chế độ nhà phát triển được bật, bạn sẽ có thể kích hoạt tính năng hệ thống con Linux. Để làm như vậy, hãy đi tới Bảng điều khiển > Chương trình > Bật hoặc tắt các tính năng của Windows > và chọn hộp cho biết Hệ thống con Windows dành cho Linux (Beta)

Giờ đây, thay vì sử dụng Cygwin hoặc trình giả lập bảng điều khiển, bạn có thể chạy tmux thông qua bash trên hệ thống con Ubuntu trực tiếp từ Windows thông qua gói apt truyền thống ( sudo apt-get install tmux).


4
Tôi tin rằng câu trả lời này phải là câu trả lời đúng: thumb-up :.
Ahed Eid


Có bất kỳ tác động bảo mật nào để làm điều này không?
leeand00

1
chắc chắn bạn sẽ chạy Tmux bên trong WSL, nhưng nó sẽ không chạy các ứng dụng windows của bạn, bạn phải cài đặt lại chúng nhưng lần này là bên trong WSL để chạy chúng từ bên trong WSL. Nếu bạn chỉ định sử dụng WSL để ssh thì điều này có lẽ sẽ không thành vấn đề nhưng thật khó chịu. Những bất tiện khác bao gồm WSL có hệ thống tập tin riêng mà bạn không thể nhìn từ windows, thậm chí WSL có thể nhìn vào hệ thống tập tin windows. Vân vân
Jose V

44

Cả tmux GNU Screen đều hoạt động dưới cygwin . Chúng có thể được cài đặt từ trình cài đặt cygwin. Chỉ cần tìm kiếm tên của họ ở đó và bạn có thể sẽ nhận được phiên bản mới nhất (ít nhất là đối với tmux ).


5
Tmux chạy khá chậm trong Cygwin.
adam

Điều này! Tải Msys2 là một nhánh của Cygwin với hỗ trợ cho MinGW-w64 và các công cụ windows khác. Tôi sử dụng Zshell với Powerlevel10k và nó nhanh nhất có thể, rất đẹp và hoạt động tốt với tmux.
Jose V

8

Bạn có thể có được những gì bạn muốn bằng cách sử dụng Console2 với Putty hoặc Plink.


1
Tôi có thể thêm vào điều này, nếu bạn sử dụng phiên bản 1.5.x của bảng điều khiển, bạn có thể định cấu hình các cửa sổ riêng biệt mà không có đường viền và tab. Bạn cũng có thể dễ dàng định cấu hình chiều rộng, chiều cao và vị trí. Tóm lại, hãy tạo một số cửa sổ và xếp chúng trên màn hình nền.
Rex Whitten

2
thậm chí sẽ không đến gần với những gì một bộ ghép kênh đầu cuối thực sự làm. hoạt động không có động cơ? toàn màn hình một ngăn với 2 tổ hợp phím? nhiều tab của nhiều bố cục ngăn? dán sao chép vô định? chuyển đổi bố cục ngăn trong tab bố cục? cuộn không có động cơ? thay đổi kích thước ngăn không có mouseless? định cấu hình trước không gian làm việc với nhiều tab / bố cục ngăn và nhảy vào và ra khỏi các phiên không gian làm việc? ghép nối từ xa? tất cả điều này với tối đa 2 lần nhấn phím và không có chuột?
Cosmin


6

Một trong những lựa chọn thay thế là MSYS2 , hay nói cách khác là "MinGW-w64" / Git Bash . Bạn chỉ cần ssh vào máy Unix và chạy hầu hết các lệnh linux từ nó. Cũng cài đặt tmux !

Để cài đặt tmux trong MSYS2 :

lệnh chạy pacman -S tmux

Để chạy tmux trên Git Bash :

cài đặt MSYS2 và sao chép tmux.exemsys-event-2-1-6.dlltừ MSYS2 thư mục C:\msys64\usr\binđể bạn Git Bash thư mục C:\Program Files\Git\usr\bin.


các liên kết tượng trưng hoạt động vì vậy nếu bạn nâng cấp git bash bên msys2 sẽ sử dụng các tệp mới hơn. từ git bash /c/Program Files/Git/usr/binđiều này đã làm việc cho tôi ngay bây giờ:$ ln -s /c/msys64/usr/bin/tmux.exe . ; ln -s /c/msys64/usr/bin/msys-event-2-1-6.dll .
Grant Bowman

Tôi thấy bài đăng trên blog này hữu ích
Grant Bowman

5

Là một giải pháp thay thế SuperPutty có các tab và tùy chọn chạy cùng một lệnh trên nhiều thiết bị đầu cuối ... có thể là những gì ai đó đang tìm kiếm.

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

Nó cũng nhập các phiên PuTTY của bạn.


2

Đây là cách bẩn thỉu:

  1. Đăng nhập vào máy chủ linux bằng "ssh -X user @ host"
  2. mở rxvt-unicode hoặc thiết bị đầu cuối X khác.
  3. mở tmux hoặc màn hình
  4. Đăng nhập lại vào máy tính cục bộ của bạn từ máy chủ
  5. khởi động trình bao yêu thích của bạn chẳng hạn như msys hoặc cygwin.

4
nếu nó trông ngu ngốc và nó hoạt động nó không phải là ngu ngốc lol
Hobroker

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.