使用VIM从文件末尾搜索

问题描述:

如何使用VIM从文件末尾进行搜索?我想在打开的文件中搜索最后一次出现的XXXX。使用VIM从文件末尾搜索

我的建议是使用范围结合?反向搜索。

:1?XXXX 

概述:

  • 1?XXXX是的范围内。
  • 1表示文件的第一行。
  • ?XXXX手段从(约包裹)的第一线,直到找到模式XXXX

由于ZYX提到这依赖于wrapscan进行设置,它是在默认情况下向后搜索。有关更多信息,请参阅:h 'wrapscan'

+5

注意:必须启用'wrapscan'选项才能使用它(默认情况下)。 – ZyX

到最后一行用G做使用?XXXX

+1

在最后一行错过了'XXXX'的可能出现。 –

+0

@ib不错的一个,我喜欢它。所以也许最好在搜索前使用'$'.. – none

类型向后搜索G$?XXXX

  • G转到文件的末尾
  • $去行
  • 结束
  • ?向后搜索
  • XXXX是你想要的搜索

你也可以做gg?XXXX都到该文件的开头,然后搜索倒着,蔓延到该文件的末尾。然而,对于大文件,寻找文件的开头然后立即到文件的结尾可能会很慢。

+0

并且在最后一行错过了可能出现的'XXXX'。 –

一种方法是:

gg?<string> 

这将会把光标移动到文件的开头和执行向后搜索。由于vim不可能在之前前进光标位置,因此它将从文件的最末尾开始执行搜索。