无法在本地vim文件

时间:2017-03-08 06:09:54

标签: ubuntu vim

我在stackoverflow上遵循了一些解决方案,几乎每个解决方案都有不同的解决方案。 我试图通过执行以下操作来复制远程服务器上文件的全部内容:

vi file1

在我正在执行的文件中:

:%y

返回" 1200条线猛拉"

然后我转到我本地机器上的另一个vi文件。我这样做:

vi file2

然后我尝试使用空{vi}文件中的ctrl pctrl R以及许多其他命令进行粘贴。 我甚至试过cat dump.sql | xclip。那也没有。我正在运行ubuntu 14.04。有人可以告诉我如何实现这个复制全部并粘贴东西??

3 个答案:

答案 0 :(得分:1)

当你进入服务器并使用vim时,你使用服务器的vim而不是你的vim。

你的vim或服务器的vim没有任何问题。

如果您要复制整个文件,我只需使用scp将文件下载到您的计算机。

as @ Meninx - メネンックス说你可以尝试这样的事情:e scp://user@host/relative/path/from/home.txt 如果你想在你的vim中完成整个操作。

以上代码来自Vim: access to system clipboard via ssh - Linux to OS X

答案 1 :(得分:0)

方式 - 我这样做 - (对改进开放!)是通过在vim中对文件进行scp。

来自shell:

  • vi file2

然后在vim中:

  • :scp user @ host:/ file / path / file1。
    • (如果不使用pubkey则提示输入密码)
    • (假设cwd可以存储文件)
  • :r file1

对于nzajt推荐的scp://解决方案,似乎必须启用这些(based on the link he provided):

  
      
  • 在/etc/ssh/sshd.conf中启用SSH服务器端的X11Forwarding
  •   
  • 在连接时使用-Y选项为ssh客户端启用它:ssh -Y your_server
  •   

我无法让scp://解决方案正常工作。

答案 2 :(得分:0)

这些答案中的许多对我来说都不起作用。我不知道我的语法是否错误或者其他什么。这对我来说很困惑。这就是我做的。我会以非常明确的方式说出来。

首先确保您可以ssh到您的服务器。对于该副本您的本地 / .ssh / id_rsa.pub 并将其粘贴到您的ec2实例 / .ssh / authorized_keys 上。所以现在尝试ssh到你的服务器,如ssh <your ubuntu user>@<ec2_public_ip>。如果您能够登录到您的服务器,那么您可以进行下一步。

通过执行以下操作找到要下载的文件名的路径:

find "$(cd ..; pwd)" -name "filename"

你会得到这条路。复制该路径。下一步

输入:在您的本地系统上

-$ scp ssh <your ubuntu user>@<your ec2 ip>:<the path you copied> <and the path on your local to download>

这将为你做到。我希望这一点很清楚,如果像我这样的新秀下次被卡住了。