【问题标题】:Remote vim isn't finding files远程 vim 找不到文件
【发布时间】:2015-11-05 05:14:17
【问题描述】:

尝试在本地编辑文件以消除滞后并且不需要同步我的 vim 配置。我不明白为什么这根本不起作用。如果我这样做了

vim scp://user@host/home/user/project/

我明白了

:!scp -q 'user@host/home/user/project/' 
'/var/folders/fm/vyvfk53d2b5gf63m7dnv3gqc0000gn/T/vGhn9Hf/0.txt'
"/var/folders/fm/vyvfk53d2b5gf63m7dnv3gqc0000gn/T/vGhn9Hf/0.txt" [New File]
Press ENTER or type command to continue

如果我只运行正常的 SCP 命令,它们会很好地下载:

scp -r user@host:home/user/project/ project/
foo.txt                        100%   20     0.0KB/s   00:00

【问题讨论】:

    标签: vim ssh sftp scp


    【解决方案1】:

    您需要指定两个斜杠//,因为manual 描述:

    vim scp://remoteuser@server.tld//path/to/document
    

    所以对于你的用例:

    vim scp://user@host//home/user/project/
    

    但无论如何使用 scp,您需要指定要编辑的文件,而不仅仅是要浏览的目录。

    对于目录,你需要使用sftp,它具有浏览目录的能力:

    vim sftp://user@host//home/user/project/
    

    【讨论】:

    • 啊,是的,我也试过双斜线。所以我根本无法打开像本地 vim 这样的目录?有 any 方法吗?插件或其他一些解决方法?
    • 你可以试试sftp,它适用于目录:vim sftp://user@host//home/user/project/
    • 越来越近了! vim sftp://user@host//home/user/project/foo.txt 居然打开了文件!耶!但是,如果我删除 foo.txt 并尝试仅将 /project/project/ 作为 URL 的结尾,它会打开文件资源管理器但不显示任何文件。它们是我想念的一些技巧吗?
    • 刚刚尝试过我的设置,即使使用文件夹也能很好地工作。您可以直接使用sftp 命令验证它是否适合您(例如,如果您的服务器上没有针对sftp 的chroot 或其他一些差异?)
    • 好吧,对于纯 sftp 调用,我调用 sftp user@host:project/,因为 /home/user/ 会自动添加到该 URL。但是,调用sftp user@host:project/ 可以正常工作,如果我调用ls,我可以看到所有文件。
    猜你喜欢
    • 2012-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-27
    • 1970-01-01
    • 1970-01-01
    • 2019-10-04
    相关资源
    最近更新 更多