VIM-将来自多个文件的行合并为单个文件

Pat*_*vid 4 vim

我试图遍历我的缓冲区列表,从每个缓冲区中选择一行,然后将它们全部串联到一个文件(或其他缓冲区)中。如:

文件1

...第2行...

文件2

...第2行...

文件3

...第2行...

等等。

全部成:

我的档案

第2行(文件1)

第2行(文件2)

第2行(文件3)

我似乎无法使我的收银机正常工作,bufdo由于某种原因使我心痛...

[说明]我希望我可以使用bufdo遍历所有缓冲区,从每个缓冲区中抽出第二行,并将其附加到寄存器中。

然后在另一个文件上,只需将寄存器内容粘贴到其中(包含我所有缓冲区的第二行)。

Cas*_*bel 5

您应该可以通过以下方式执行此操作:

bufdo normal 2G"Ayy
Run Code Online (Sandbox Code Playgroud)

它会遍历缓冲区并以正常模式运行给定命令。2G跳到相应的行,并"Ay进入寄存器a,追加而不是覆盖(因为A大写)。开始之前,请确保寄存器a为空!

您可以使用windotabdo如果您有窗口或选项卡而不是缓冲区。

  • @Pat您可以改用命令模式命令`:bufdo 2yank A`。 (3认同)