对我来说,没有一个好用的终端模拟软件,MBP就无法成为一个合格的生产力工具…
如果你也有和我一样的困扰,很抱歉,这篇博客或许并不能给你一个想要的答案。
相比于一个答案,这篇博客更像一堆抱怨。
2022.05.20更新:现在有答案了。我自己写了一个工具…
背景
从Windows切换到Mac之后,第一个很怀念的软件是Everything,第二个就是XShell了。
在网上也搜了很久,发现几个现象:
- 部分Mac用户很骄傲,如果你用得不习惯,那是你的问题,而不是Mac的问题。
- 推荐最多的就是iTerm2。
- 无论推荐的是什么,下面都有人赞同,也有人反对。
我的需求
其实归根结节就是用户群不一样,大家都在自说自话。而我也很清楚自己的需求并不算大众,从用户画像来说比较偏向运维工程师,大概可以总结为以下几点(优先级由高到低):
基本诉求
- Session管理
因为环境都在公有云Linux服务器上,而且都是7节点起步的集群。所以需要支持保存Session,多层级分组。 - 支持登录脚本
因为集群通常只有一台主节点有公网IP,其他节点都要通过主节点跳转。所以需要通过登录脚本在登录到主节点之后自动跳转到其他节点。 - 多窗口同时输入
因为同一微服务可能部署在多个节点上,并且没有使用成熟的日志分析系统,所以还有多个节点同时看日志,同时操作分析问题的场景。 - 自定义快捷键
Session复制,Tab切换,Tab重命名… - Session文件可编辑
因为前面所说的环境都是集群,且经常有全新IP的新环境,所以需要支持手动构造Session配置,这样在环境变更之后,可以通过类似CSV文件快速生成对应的Session配置。 - 稳定
前面一切诉求的基础。
加分项
- 高颜值
好心情很重要… - 支持快捷命令
很多冗长的命令没有必要反复输入,通常情况下,这一点可以通过alias解决,但是我面对的服务器很多都是不允许我自定义设置的。 - 记录文本的操作日志
作为小白,“偷师”利器… - 内嵌SFTP工具
就不需要再装Transmit或者FileZilla了。并且这种内嵌SFTP工具通常都支持跳转到当前所在目录,真的很好用。
目前的选择
以上几个需求,在Windows上XShell,MobaXterm,SecureCRT都可以满足我的需求。但是在macOS下,目前似乎还没有,简单的试用过如下几个…
SecureCRT
总的来说上面几点都满足了,应该是和我的需求契合度最高的了,也是我目前的选择。但是多窗口同时输入存在如下问题:
- 需要在单独的Command Windows进行,不支持上下查找历史命令,不支持tab联想,不支持类似Ctrl+C这种特殊命令,并且Command Windows会占用一部分额外的空间。
- 不稳定,这也是最让我无法接受的地方。Command Windows偶尔会无法输入,需要关掉再打开。在多窗口执行类似top命令后,偶现鼠标丢失,无法选择窗口文本。
- 设置例外窗口操作复杂。
Termius
Session只支持单一层级。
iTerm2
不支持Session管理。
CrossOver安装Xshell7
CrossOver官方没说支持,安装之后无法启动…
CrossOver安装MobaXterm
CrossOver官方说支持,安装过程卡在安装.net 4.6.2…
FinalShell
貌似已经停止维护了,而且网评资源占用很高…
NuoShell
不支持多窗口同时输入。
NuoShell
不支持多窗口同时输入。