加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

使用vim远程编辑serverB上的文件,只能从serverA访问

发布时间:2020-12-15 17:01:32 所属栏目:安全 来源:网络整理
导读:虽然我从未尝试过这个,但显然可以按照 here所述在vim中远程编辑文件.在我的特殊情况下,我需要访问的服务器只能从校园访问,因此我必须登录我的大学帐户所以: ssh user@login.university.com 然后从那里登录到安全服务器,如下所示: ssh user@secure.universi
虽然我从未尝试过这个,但显然可以按照 here所述在vim中远程编辑文件.在我的特殊情况下,我需要访问的服务器只能从校园访问,因此我必须登录我的大学帐户所以:
ssh user@login.university.com

然后从那里登录到安全服务器,如下所示:

ssh user@secure.university.com

我有无密钥ssh设置,所以我可以像这样自动化这个过程:

ssh user@login.university.com -t "ssh user@secure.university.com"

无论如何在我的本地机器上远程编辑一个文件,如secure.university.com/user/foo.txt?

编辑:

我的意图是在我的本地机器上使用vim,因为它是不切实际的(移动.vim文件夹,复制.vimrc)并且在某些情况下不可能(使用某些设置重新编译vim,修补vim源,安装语言美化器)以在远程上制作vim机器的行为方式与我希望它的行为方式相同.我想要的是发出这样的东西(这不是准确的scp,我知道)

vim scp://user@login.university.com scp://user@secure.university.com//home/user/foo.txt
经过一番努力,我明白了.首先,你必须编辑(或创建)你的.ssh / config文件,如 here所述.为了我们的目的,我们将添加一个这样的行,它基本上添加了一个代理.
Host secure
  User          Julius
  HostName      secure.university.com
  ProxyCommand  ssh Tiberius@login.university.com nc %h %p 2> /dev/null

然后我们可以简单地(通过scp)将文件secure.university.com:/home/Julius/fee/fie/fo/fum.txt复制到本地计算机上,如此

scp secure:/home/Julius/fee/fie/fo/fum.txt fum.txt

对此进行扩展,我们可以将其远程加载到vim中,如下所示:

vim scp://secure//home/Julius/fee/fie/fo/fum.txt

或像这样使用badd:

:badd scp://secure//home/Julius/fee/fie/fo/fum.txt

为了简化我的生活,我将这个快捷方式添加到我的.vimrc文件中,以获取最常用的子文件夹:

nnoremap <leader>scp :badd scp://secure//home/Julius/fee/fie/fo/fum.txt

到目前为止,vim已经证明这是一个远程文件,所以如果C文件包含这样的文件:

#include "foo.h"

它不会抱怨“foo.h”缺失

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读