开源SSH客户端-WindTerm
2021-11-30 21:31:39 阿炯

WindTerm是新近出现的跨平台运行的SSH客户端,支持Windows、Linux、macos等,采用C++(QT)语言开发,在ApacheV2.0许可条款下使用(第三方的功能除外)。


A Quicker and better SSH/Telnet/Serial/Shell/Sftp client for DevOps.


完全免费用于商业和非商业用途,没有限制,性能方面也有不俗的表现,富有个性的Ui布局,优异的sftp传输效率,出色的演示文档都能看出作者是非常用心的。

主要功能
实现了 SSH v2、Telnet、Raw Tcp、串行、Shell 协议。
支持 SSH ProxyCommand 或 ProxyJump。
支持SSH代理转发。
支持使用密码、公钥、键盘交互、gssapi-with-mic 的 SSH 自动登录。
支持X11转发。
支持直接/本地端口转发、反向/远程端口转发和动态端口转发。
支持 XModem、YModem 和 ZModem。
集成sftp、scp客户端,支持下载、上传、删除、重命名、新建文件/目录等。
集成本地文件管理器,支持移动到、复制到、复制自、删除、重命名、新建文件/目录等。
支持 Windows Cmd、PowerShell 和 Cmd、PowerShell 作为管理员。
支持Linux bash、zsh、powershell core等。
支持 MacOS bash、zsh、powershell core 等。

安装WindTerm
Windows用户直接解压WindTerm_2.x.x_Windows_Portable.zip并双击WindTerm.exe即可使用。

设置与使用
作者在他的博客介绍了各种特性和使用说明,非常值得一看。

设置终端字体
WindTerm并没有将设置字体的功能做到窗口选项,不过我们可以通过修改主题文件来完成。默认使用的dige-black这个主题,打开WindTerm目录下的global\hemes\\dige-black\\scheme.theme找到:
{ "name": "text.default", "style": { "foreground": "#F8F8F2", "background": "#1c1c1c", "fontFamily": "Microsoft-Yahei-Mono,Consolas Yahei Hybrid,Roboto Mono, Fira Code Retina, Lucida Sans Typewriter, Lucida Console, Monoca", "fontSize": 11 } }

修改fontFamily属性即可。

设置窗口透明度
打开顶部窗口的View - Window Opacity - Custom Opacity,根据喜好进行设置。

配置同步
如果需要在多台电脑使用WindTerm,希望Session信息保持同步,可以用网盘直接同步WindTerm下的profiles文件夹即可。但目前WindTerm不支持自定义profiles路径。

关闭自动锁屏
出于安全性考虑WindTerm默认30分钟后自动锁屏,并要求用户输入密码,如果您不希望自动锁屏,可以修改global\\wind.config将application.lockScreenTimeout设置为0或负数即可(需要重启客户端)。

快捷命令
挺实用的一个功能,可以将常用且难记的命令添加到快捷命令中,方便下次快速使用。点击右下方齿轮按钮,根据提示添加即可。

设置跳板机
当连接某台VPS网络不佳,还可以通过现有的任何机器作为跳板机登录,只需要编辑Session - SSH - Proxy - Jump Server 1进行选择即可。

关于性能
作者在Github放出了性能测试数据,WindTerm使用C++语言开发,性能自然不弱。

亮点功能

自动补全:该功能简直是我们程序员的福音!想想在写代码的时候,自动补全功能节约了我们多少时间?WindTerm也自带自动补全功能,这我还是第一次在终端工具里见到。之前我们敲命令,都通过不断敲击 Tab 键来补全命令,这下好了,都不用敲 Tab 键了。

强大的历史回溯功能:一般情况下,需要查看之前输入过的命令,都是使用 history 命令。而 WindTerm 则直接在右侧给你带了一个历史命令的窗口,连 history 命令也都省了!而且它还有筛选功能,甚至都不用再 grep 了。要重新执行某条命令,就双击一下对应的命令就行了。而在之前还需要记住历史命令的编号,再用 ! 重新执行。当然依然也可以使用 ! ,只不过是顺带给加强了。不仅可以重新执行当前会话的命令,还可以回溯其它会话你输入过的命令!

快速命令:windterm右上角会话区域Shell sessions中集成了cmd及git bash窗口功能,便于同时操作多种类型会话。所谓的快速命令,就是类似于脚本,可以把要执行的命令放在快速命令里,然后执行这个快速命令,它就会把里面的命令按次序执行。然后,点击左下角你起的快速命令的名称,就可以自动按顺序执行你刚刚输入的那些命令了。

同步输入功能:如果是运维工程序员的话,可能会有这样的需求,就是对多台服务器同时输入某条命令。

最后

WindTerm功能丰富,完全满足运维人员需要,用来替代Xshell、FinalShell也完全没有问题。但WindTerm并不完美,比如很多选项还没有做到窗口设置,只能通过手动修改配置文件,这点有些不方便。据作者透露,多语言支持也会在下个版本上线,希望WindTerm后续做得更好。

最新版本:2.2


项目主页:https://github.com/kingToolbox/WindTerm