如何使用 vim 打开以加号开头的文件(例如 +foo.out)?

如何使用 vim 打开以加号开头的文件(例如 +foo.out)?

在我的文件系统中,有一些文件以加号开头。当我尝试使用 vim 打开这些文件时,会抛出错误。

例如,输入时...

vim +foo.out

我收到以下错误...

Error detected while processing command line:
E492: Not an editor command: foo.out

我发现 vim 认为既然有加号,我肯定是在尝试运行某种命令,但因为后面跟着文件名,所以它不知道该怎么做。有什么建议可以解决此问题并打开/编辑文件吗?

答案1

是的,vim不解释+foo.out为文件名。至少有两种解决方案:

  1. 使论点看起来绝对或相对路径,所以它不以+或开头-。在这种情况下

    vim ./+foo.out
    

    一般来说,当参数是文件名时,这种方法很有用。如果不是(例如grep -string-to-find),则需要使用其他方法。

  2. 通知工具何时应停止解析选项。一种常见的方法是使用双划线. 在这种情况下,它将是

    vim -- +foo.out
    

    一般来说,当工具支持 的这个含义时,这很有用--。Vim 支持,许多工具都支持(注意:支持--是其中之一POSIX 指南有些则不然。

如果每种方法都可以使用,那么同时使用它们就有点过分了,但绝不是错误:

vim -- ./+foo.out

相关内容