

NextSSH | 高颜值的 SSH 客户端:关于远程连接服务器的那些事
source link: https://sspai.com/post/73201
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

高颜值的 SSH 客户端:关于远程连接服务器的那些事

Matrix 首页推荐
Matrix 是少数派的写作社区,我们主张分享真实的产品体验,有实用价值的经验与思考。我们会不定期挑选 Matrix 最优质的文章,展示来自用户的最真实的体验和观点。
文章代表作者个人观点,少数派仅对标题和排版略作修改。
TL;DR 这是一个关于 NextSSH 的文章。软件的官网:https://xzhshch.com/ (前排付费软件提醒)

PS:本文撰写于 NextSSH v1.2.2 发布后,部分截图来自开发中的 NextSSH v1.3.0-beta,可能存在部分细节上的差异。
各位好,我是 NextSSH 的开发者。
我最早开始对计算机编程感兴趣时,接触的是 C51 单片机、无线电入门和网站开发(PHP,请不要吐槽这个跨度?)。随着网站开发出现在我的技能树里,远程连接服务器就变成了基本操作。
在早期的互联网资料中,连接远程服务器的主要工具是 Putty,因为它绿色、开源、无公害。在看到下面这个界面后,我坚定地选择了 Windows Server 和 IIS 作为服务器。?

看上去 Windows Server 和 Linux 之间的选择和 Putty 没什么关系。但是回想一下,一个孩子,第一次拥有一台服务器(啊当然是 VPS),手足无措又想按耐不住好奇心的时候,一个黑框框和一个熟悉的桌面,哪一个更有安全感呢?
Linux 当时给我一种捉摸不透的感觉,时常让我觉得不知道正在发生什么。当然,这个感受随着年龄的增长和之后的学习消散了。
但有一个「执念」留了下来:直观、清晰、设计良好的的软件界面能特别吸引我的注意力。
盒子里都有什么?
我觉得我还算是用过不少 SSH 客户端软件。终端+ssh 命令、Putty、Finalshell、Xshell、Termius、Tabby、Windterm、Electerm。暂时放下远程终端这个本身功能不谈。有一些功能可以称得上「左膀右臂」:
- 系统数据的图形化显示(CPU、内存用量,网络状态……)
- 保存常用的命令片段
除了这些功能外,有一些是软件设计上十分实用的特点:
- 打包传输文件
- 在线的文件编辑器
- 分屏、多窗口管理
思考这些功能时,其实就能回答一个问题:为什么不用 ssh 命令?
因为我在将简单的问题复杂化。
我并非想要找到一个朴素的工具,而是想寻找一个趁手的工具箱,工具箱里的东西越简洁越好。
说起来,这个功能直接来自于 Finalshell 的影响。
从一个界面上一下子了解系统的诸多数据,曾经帮助我很快的定位了内存泄漏、文件膨胀之类的问题。于是我为 NextSSH 设计了一个起始页。就像是浏览器的起始页,当新打开一个服务器的连接时,先看到的就是这个页面。
诚然,NextSSH 的数据汇总页面比不上专门监控服务器的工具。而且 NextSSH 本身也不会记录历史数据或绘制图表。但这都不是问题,因为这个功能的名字叫做「监看」。想象一下导演坐在监视器前,确认各个摄影机位的画面是否满意的感觉,就是这个功能的意图。


终端就是 SSH 软件的本体功能了。NextSSH 在除了终端本身的基础上,有两个我得意的设计。
其一是下面的编辑栏。其实很多软件也有类似的功能。一般情况下命令都比较短小精干,毕竟命令行交互是很简洁的。但总有些那么意外的情况,比如 Docker 的启动命令。每当从网上复制一个启动命令过来,总是不得不有一些参数需要修改,而在 Shell 里反复移动光标总是没有鼠标痛快。
于是终端下面就增加了一个可以展开的编辑器。可以临时停靠复制来的长命令。

另一个功能则来自用户之前的反馈:在终端界面下按 Ctrl/Cmd+Shift+K
即可呼出一个搜索栏。这个搜索栏可以查找所有曾经输入过的命令,也包括其他主机上的输入,以及保存过的命令片段。理论上可以把常用的配置、重启服务、安装软件之类的命令保存下来,在这就可以快速使用。

SFTP 与编辑器
如果一个 VS Code 嵌在 SSH 里岂不是很有趣……
我当时就是这么想的。
最早接触网站开发的我,将常被反反复复修改文件折磨。因为调试或者部署网站就有 PHP 配置文件、NGINX 配置文件、APACHE 配置文件、数据库配置文件、网站本身的 CONFIGINC 文件……一大堆文件需要反复调整和编辑。
一般情况下可以使用 vim 等工具在 Shell 里进行编辑。然后就卡在 vim 里不知道怎么保存退出。有一些工具之后,可以把文件下载到本地,使用常用的编辑器修改后重新上传覆盖。除了步骤多一些,也很好用。
小孩子才做选择,我选择自己做一个选项:一个嵌入到软件里的 Monaco 编辑器,带有语法高亮、多编码支持。双击文件就能打开,Ctrl/Cmd+S
就能保存。
更有趣的是,NextSSH 可以在 Shell 环境里注入一个 nsopen
命令,使用命令可以在远程终端里打开本地 NextSSH 的编辑器(注入命令会自动执行脚本,具体内容和功能禁用方法请参考文档)。

另外值得一提的是文件打包传输功能。比如我需要将网站的源码上传到服务器上,直接将文件夹拖到 NextSSH,之后就能自动完成压缩、上传、解压缩的步骤。
打包传输文件其实和正常传输的效果没有区别。只是网站的源码文件可能有成百上千个小文件,反复传输小文件将把时间都浪费在 SFTP 的协议指令和网络延时上。

经过来来回回的修改和推敲,才有了 NextSSH 现在的样子。如果你去搜索引擎里翻找,还能看见它之前的样子。在 v1 之前的界面和现在几乎是两个东西。
如果你经常需要和服务器打交道、如果你喜欢 NextSSH 的设计的话,都十分欢迎你下载软件来体验一下。
如果遇到什么问题,在网站上与软件里都有反馈的渠道。
以上,祝愉快。
> 下载 少数派 2.0 客户端、关注 少数派公众号,解锁全新阅读体验 ?
> 实用、好用的 正版软件,少数派为你呈现 ?
</div
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK