我目前的工作环境需要处理大量远程机器(测试机器、客户设置、构建服务器)并经常编辑/读取这些机器上的文件。我使用 ssh 访问这些机器。到目前为止,我已在所有设置中使用 vi。但这种方法存在一些问题。
- 一些服务器是 AIX 和 HPUX,没有更新的 vim 包,并且大多数位置安装了较旧的 vi 编辑器。
- 这些机器上的键绑定几乎总是混乱的,除非您更改 .xxxrc 文件,否则退格/删除按钮在 bash 和 vi 中很少起作用。
- 是一组测试机器,团队根据需要使用它们,并且经常重新安装操作系统以复制客户场景,同时处理升级问题。因此,在一台机器上费力地进行设置是不值得的。
当我读到有关 emacs 的远程编辑模式/远程 shell 时,它似乎是完美的答案。但我是 emacs 的新手,所以我不太了解它的缺陷(如果有的话)。
我想知道这两种方法的客观比较,以及是否有第三种更好的方法。
答案1
我认为这个问题太主观了。这完全取决于个人喜好。
您可以尝试以下任一操作:
- 了解完整的 vi 指令/键映射,这样你就不需要使用退格键和删除键
- 学习 emacs
这真的不重要。就我个人而言,我建议你继续使用 vi,因为你已经了解它了,但 emacs 非常强大。
答案2
所有远程机器的共同功能似乎是 SSH,因此我将在您自己的机器上启动 (g)Vim 并远程编辑文件,可以使用 SSHFS 或在 Vim 中使用网络插件,Vim 预装了该插件:
vim scp://hostname/path/to/file
如果您需要远程查找文件、执行命令等,您可以随时打开单独的 SSH 连接。