在终端上的 vi 中查找当前打开文件的文件名

在终端上的 vi 中查找当前打开文件的文件名

如何检查终端中打开的文件名?也就是说,如何检查终端中现在打开了哪个文件?

现在每当我想查看文件名时,我都必须退出然后检查。有没有办法在终端中检查当前文件名?

答案1

要在 vi(m) 中查看文件名,请按esc,然后输入

:set title

文件名显示在终端窗口的顶部栏中。您还可以执行

:buffers

查看当前打开的文件 - 信息显示在终端底部。如果您打开了多个文件,您可以通过%a 当前文件旁边的显示来判断您当前在哪个文件中,例如

:buffers
  1 %a=   "unicorns"      line 19     
  2       "rainbows"      line 1
Press ENTER or type command to continue

答案2

我更喜欢 Ctrl-G:

http://vimdoc.sourceforge.net/htmldoc/editing.html

CTRL-G      or              *CTRL-G* *:f* *:fi* *:file*
:f[ile]         Prints the current file name (as typed, unless ":cd"
            was used), the cursor position (unless the 'ruler'
            option is set), and the file status (readonly,
            modified, read errors, new file).  See the 'shortmess'
            option about how to make this message shorter.
            {Vi does not include column number}

答案3

使用:f。它将显示文件名以及额外信息:

在此处输入图片描述

您还可以使用:args查看将哪些文件名作为命令行参数传递给 vim。如果您打开了多个文件(当前文件括在括号中),这在您想要知道正在使用哪个缓冲区时非常方便:

在此处输入图片描述

答案4

我非常喜欢状态行set laststatus=2 (或者set ls=2

vim 状态行截图

如您所见,除了当前模式、文件状态、标尺等其他有用信息外,状态行还显示当前打开的文件的完整路径。

:帮助最后状态更多细节。

*感谢斯文


我喜欢随时查看状态行,因此我将上述指令添加到我的vim本地配置中:

 sudo sh -c "echo 'set ls=2' >> ~/.vimrc"

相关内容