【问题标题】:How to open files with pattern recursively in vim如何在vim中递归打开带有模式的文件
【发布时间】:2013-05-16 06:21:03
【问题描述】:

各位,我如何用一个命令在 vim 中打开多个文件?

我要打开的这些文件有某种模式,例如:

myfile1dsa
myfile2dsdas
myfile3xzczxcz

这些打开的文件还会在我的 vim 窗口中创建自己的选项卡吗?

和题外话:

linux 命令中的“--”是什么意思?它与“-”有何不同?

示例:

grep --color 'data' fileName

【问题讨论】:

  • GNU(和 POSIX)将带有一个 - 的选项标志定义为一个字母的“短选项”。双减号表示长选项(比单个字母长)。情况并非总是如此(X 约定经常使用诸如-display 之类的选项)

标签: linux vim


【解决方案1】:

您可以在vim 中使用

打开它们
:args myfile*

或者如果你想在子文件夹中打开所有匹配模式的文件

:args **/myfile*

这一切都假设您的当前目录是您要从中打开文件的文件夹。如果不是,则将目录添加到 myfile。

:args /yourfolder/myfile*
:args /yourfolder/**/myfile*

编辑(cudo's to romainl)

要打开选项卡中的所有文件,您可以使用

:argdo tabe

基本上是这样的:

  • argdo: 对于参数列表中的每个文件
  • tabe:打开一个新标签页并编辑文件

【讨论】:

  • 请解释一下 ** 在您的第二个参数中的含义
  • @ruggedbuteduducated,这很容易解释,但:h ** 更好。
  • @ruggedbuteduducated,一旦填充了 arglist,请执行 :argdo tabe
  • @ruggedbuteduducated - 您可以使用 :bn(ext):bp(revious) 在缓冲区中导航。就个人而言,我已将:bn<CR> 映射到<C-N> 以便于导航并将<leader>b 映射到:ls<CR>:b<Space>,因为这是我发现使用缓冲区列表的最快方式。如果我没记错的话,那部分也来自 romainl。
  • "您可以在 vim 中打开它们" 也可以从 shell 命令行:vim myFile*vim **/myFile* 等,结果完全相同(有缓冲区如果有人关心,则从“1”编号而不是“2”编号)。
猜你喜欢
  • 2017-05-30
  • 2011-01-11
  • 2014-07-04
  • 2017-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-17
  • 2021-08-17
  • 1970-01-01
相关资源
最近更新 更多