无法使用VIM编辑远程文件

时间:2015-09-02 10:54:03

标签: macos vim scp

我正在尝试使用VIM编辑远程文件。在终端,我输入:

vim scp://my_user@some.server.net//app/logs/jboss/sso.log

并获得此输出:

:!scp -q 'my_user@some.server.net:/app/logs/jboss/sso.log' '/var/folders/4d/6z5mf6m96bq105stbqy_tjf4jmvwpj/T/vyHJPX5/0.log'
my_user@some.server.net's password:

[8]+  Stopped                 vim scp://my_user@some.server.net//app/logs/jboss/sso.log

我知道我拥有正确的凭据并且文件存在,因为:

scp my_user@some.server.net:/app/logs/jboss/sso.log ~/Documents

成功将所需文件复制到localhost。 vim wikia表明我的语法是正确的。

正在下载文件,但VIM无法开始编辑。 当我启动vim并发出以下命令时也会发生同样的情况:

:e scp://my_user@some.server.net//app/logs/jboss/sso.log

该文件被下载到临时文件夹,我被抛出VIM回到控制台。

我在OSX上使用VIM 7.3(2010年8月15日,2014年11月6日14:32:04编译)。我用brew安装了它。

如何解决这种情况并让VIM开始编辑远程文件?

1 个答案:

答案 0 :(得分:0)

似乎Vim正在尝试创建文件的临时本地副本以进行编辑。但是它位于/var/folders/...(如scp所示),您可能无权写入。

通过设置TMPDIR

,尝试将其写入用户控件的某个位置
export TMPDIR=$HOME/tmp
mkdir $TMPDIR  # if it doesn't exist

此外,通过使用双斜杠(//),您告诉vim使用绝对路径,因此/app不应该相对于my_user的主页。不清楚你是否故意这样做。