Warp 终端是一款经过完全重新设计、用 Rust 语言编写的快速终端程序。它的目标是使终端能够像现代应用程序一样高效工作。作为一个强大的终端工具,Warp 提供了丰富的功能和优化的用户界面,满足了不同用户的需求。
Warp 终端支持多种协议和终端类型,包括 SSH v2、Telnet、Raw TCP、Serial 和 Shell。这使得它适用于各种不同的使用场景,无论是在本地操作还是远程连接其他设备。
在功能方面,Warp 终端具备许多令人印象深刻的特性。它支持 SSH 自动登录,并提供了多种登录方式,如密码、公钥、键盘交互和 gssapi-with-mic 验证。此外,Warp 还支持 X11 转发、端口转发以及文件传输协议,包括 XModem、YModem 和 ZModem。它还集成了 SFTP 和 SCP 客户端,使文件的上传、下载、重命名和删除变得十分方便。
Warp 终端的用户界面经过精心设计和优化,以提供更好的用户体验。它支持多语言用户界面,并提供了会话对话框、会话树以及命令面板等功能,使会话管理更加便捷。自动补全功能和自由输入模式可以提高命令输入的速度和灵活性。Warp 还支持多种颜色主题、窗口透明度和标签搜索,以及类似 VSCode 的代码预览和语法突出显示功能,让用户能够自定义终端的外观和行为。
除了功能和界面优化外,Warp 终端还注重性能方面的提升。它具有动态内存压缩功能,能够在不占用过多内存的情况下提供高性能和低延迟。此外,Warp 还针对不同的终端和控制台进行了性能优化,以确保其在多种平台上均能良好运行。
总体而言,Warp 终端是一款令人印象深刻的终端工具。它通过重新设计和优化,使终端能够以现代应用程序的方式工作,提供了丰富而强大的功能。不论是开发人员、系统管理员还是普通用户,都可以通过使用 Warp 终端来提高工作效率和操作便捷性。
特点
支持的协议和终端
- SSH v2:支持 SSH v2 协议,支持自动执行鉴权后的会话。
- Telnet:支持 Telnet 协议。
- Raw TCP:支持原始 TCP 连接。
- Serial:支持串口连接。
- Shell:支持通过终端执行系统 shell。
功能丰富
- ProxyCommand 或 ProxyJump:支持 SSH ProxyCommand 或 ProxyJump 用于连接 SSH 代理服务器。
- SSH Agent:支持 SSH Agent 功能。
- SSH 自动登录:支持密码、公钥、交互式键盘验证和 gssapi-with-mic 方法的 SSH 自动登录。
- X11 转发:支持 X11 转发功能。
- 端口转发:支持直接/本地端口转发、反向/远程端口转发和动态端口转发。
- 文件传输:支持 XModem、YModem 和 ZModem 文件传输协议。
- 集成的 SFTP、SCP 客户端:支持下载、上传、删除、重命名和创建新文件/文件夹等功能。
- 集成的本地文件管理器:支持移动、拷贝、删除、重命名和创建新文件/文件夹等功能。
- 支持 Windows 的 Cmd、PowerShell 和以管理员身份运行的 Cmd、PowerShell。
- 支持 Linux 的 bash、zsh、PowerShell Core 等。
- 支持 macOS 的 bash、zsh、PowerShell Core 等。
GUI 和界面优化
- 跨平台支持:Windows、macOS 和 Linux 均可使用。
- 多语言用户界面:支持多语言用户界面。
- Unicode 13 支持。
- 会话对话框和会话树:方便管理和切换会话。
- 自动补全功能:支持自动补全功能,提升输入效率。
- 自由输入模式:支持自由输入模式,增强输入灵活性。
- 焦点模式:支持焦点模式,集中焦点于当前会话。
- 输入同步:支持输入同步功能。
- 加强的会话用户名和密码保护。
- 命令面板:支持通过命令面板快速执行命令。
- 命令发送器:支持命令发送器功能。
- 资源管理器窗格:集成的资源管理器窗格,方便浏览和操作文件。
- Shell 窗格。
- 快捷工具栏。
- 粘贴对话框。
- 本地和远程模式下支持 Vim 键绑定。
- 支持时间戳、折叠、大纲视图、分割视图等功能。
- 支持 Linux 和 PowerShell 中的 Powerline,例如 Oh-My-Zsh、Oh-My-Posh 等。
- 类似 VSCode 的颜色主题支持。
- 支持搜索和预览功能。
- 支持突出显示开放和闭合的分隔符,如括号、方括号、花括号等。
- 支持自定义 UI 主题。
- 支持设置标签颜色。
- 支持在已打开的标签中进行搜索。
- 支持关闭右侧的标签。
- 支持设置窗口透明度。
- 支持选择复制、右键粘贴或中键粘贴。
- 支持使用 Google、Bing、Github、Stackoverflow、Wikipedia 和 DuckDuckGo 在线搜索文本。
- 在输入时隐藏鼠标光标。
- 支持锁屏功能。
终端性能
协议和终端
- 支持 vt100、vt220、vt340、vt420、vt520、xterm 和 xterm-256-colors 终端。
- 支持 Unicode、表情符号、真彩色、鼠标协议等。
- 支持自动换行模式。
会话管理
- 支持 HTTP 和 SOCKS5 代理。
- 支持跳板服务器代理。
- 支持手动和自动化会话记录。
- 重命名和复制会话。
- 在重新启动后恢复上次的会话和布局。
性能优化
- 动态内存压缩:通常可以减少工作内存负载的 20% 到 90%。
- 高性能、低内存占用、低延迟。
SFTP 性能
使用以下硬件进行性能测试:
- Windows 10:2.3 GHz Intel Core i5 和 8GB 内存。
- 对于 WindTerm1.72、WindTerm1.2、FileZilla 3.48.1 和 WinSCP 5.17.2 (Build 10278) 进行的测试是在 WSL (Ubuntu 18.04.2) 环境下进行的。
以下是测试过程中生成的数据:
测试文件:5GB 的巨大文件(大小为 5,154,830 KB),由随机数据生成
下载时间 | 下载速率 | 上传时间 | 上传速率 |
---|---|---|---|
WindTerm 1.72(使用高速传输) | 23s | 216.3 MB/s | 20s |
WindTerm 1.72 | 23s | 214.7 MB/s | 20s |
WindTerm 1.2 | 37s | 139.3 MB/s | 43s |
FileZilla | 32s | 161.1 MB/s | 30s |
WinSCP | 81s | 63.7 MB/s | 91s |
文件数量:4400 个文件,16 个文件夹(总大小:107,042 KB),从 vim-7.4.1049.zip 解压
下载时间 | 下载速率 | 上传时间 | 上传速率 |
---|---|---|---|
WindTerm 1.7 | 26s | 3.9 MB/s | 13s |
WindTerm 1.2 | 32s | 3.4 MB/s | 10s |
FileZilla | 48s | 2.2 MB/s | 35s |
WinSCP | 42s | 2.6 MB/s | 12s |
以上测试数据仅供参考。
终端性能
硬件配置
- Windows 10:2.3 GHz Intel Core i5 和 8GB 内存。
- macOS 10.13:2.3 GHz Intel Core i5 和 8GB 内存。
以下是不同终端工具在不同平台下的性能测试结果:
WindTerm1.72、rxvt、putty、xterm、Windows Terminal(在 WSL 上运行 Ubuntu 18.04.2)
终端工具 | 滚动行数 | 内存占用(MB) | 用时(秒) |
---|---|---|---|
WindTerm 1.72 | 200,000 | 35.73 | 9.786 |
rxvt | 200,000 | 32.52 | 2.585 |
putty | 200,000 | 36.36 | 4.047 |
xterm | 200,000 | 37.42 | 3.277 |
Windows Terminal | 200,000 | 42.19 | 8.302 |
Iterm2、kitty、Alacritty(在 macOS Shell 上)
终端工具 | 滚动行数 | 内存占用(MB) | 用时(秒) |
---|---|---|---|
Iterm2 | 200,000 | 98.12 | 13.685 |
kitty | 200,000 | 44.28 | 7.933 |
Alacritty | 100,000 | – | 0.626 |
以上测试结果仅供参考。
控制台性能
硬件配置
- Debian 10 虚拟机:4 个 CPU 和 4GB 内存。
以下是不同控制台工具在不同平台下的性能测试结果:
WindTerm、Gnome Terminal、Mate Terminal、Konsole、Xfce4 Terminal、QTerminal
控制台工具 | 滚动行数 | 内存占用(MB) | 用时(秒) |
---|---|---|---|
WindTerm | 无限制 | 18.6 | 1.976 |
Gnome Terminal | 无限制 | 不适用 | 9.781 |
Mate Terminal | 无限制 | 不适用 | 9.841 |
Konsole | 无限制 | 不适用 | 25.050 |
Xfce4 Terminal | 无限制 | 不适用 | 10.520 |
QTerminal | 无限制 | 不适用 | 20.763 |
WindTerm、Gnome Terminal、Mate Terminal、Konsole、Xfce4 Terminal、QTerminal(滚动行数:100)
控制台工具 | n = 1,000,000 | n = 2,000,000 | n = 5,000,000 | n = 10,000,000 | n = 10,000,000(滚动行数:30) |
---|---|---|---|---|---|
WindTerm | 0.846s (18.6MB) | 1.574s (26.6MB) | 4.046s (56.4MB) | 8.232s (102.2MB) | 7.748s (3.4MB) |
Gnome Terminal | 0.920s | 2.152s | 5.271s | 11.111s | 13.109s |
Mate Terminal | 0.822s | 1.698s | 5.943s | 10.920s | 12.290s |
Konsole | 1.612s | 3.199s | 8.157s | 16.029s | 15.650s |
Xfce4 Terminal | 0.870s | 2.160s | 5.866s | 12.089s | 13.304s |
QTerminal | 9.272s | 18.391s | 45.999 | 104.277 | 17.208s |
以上测试结果仅供参考。
性能总结
Warp 终端在支持的协议和功能方面非常丰富,同时在 GUI 和界面优化方面也做出了很大努力。它具备高性能、低内存占用和低延迟等优点。然而,不同终端和控制台工具在不同平台下的性能表现会有所差异。因此,在选择合适的终端工具时,建议根据自己的需求和操作系统平台进行评估。
请注意,上述测试数据仅供参考,实际性能可能受到多种因素的影响,如硬件配置、网络状况和所执行任务的复杂性等。建议根据实际需求和环境进行综合评估。
评论留言