在Vim中打开最后一个命令的输出

时间:2014-11-04 05:28:14

标签: linux bash vim

当我使用find命令,然后想要在vim输出的路径上使用find时,它会发生很多次(每天很多次)。有没有更有效的方法来做到这一点?

find /my/path/to/ | grep Makefile

输出:/my/path/to/Makefile

然后输入cmd:vim /my/path/to/Makefile

3 个答案:

答案 0 :(得分:0)

您只需cd到您的项目并启动Vim:

$ cd /my/path/to/ && vim

并告诉它打开满足您要求的所有文件:

:args **/Makefile

如果你真的坚持

答案 1 :(得分:-1)

一次打开​​一个文件

即使包含空格,制表符或其他内容的路径/文件名也是如此:

find /my/path/to/ -name 'MakeFile'  -exec vim {} \;

如果找到多个MakeFile,则每个MakeFile将依次在vim中打开。

以上假设您要编辑的名称为MakeFile。作为限制较少的版本,这将查找并编辑名称中包含字符MakeFile的文件:

find /my/path/to/ -name '*MakeFile*'  -exec vim {} \;

在一个vim会话中打开所有文件

find /my/path/to/ -name 'MakeFile' -exec vim {} +  

打开这样的多个文件时,vim将从第一个命名文件开始。要转到下一个文件,请使用:n。要进入第三个,请再次使用:n。要返回第一个,请使用:rewind

答案 2 :(得分:-2)

Gettext(和其他人)有很多疯狂的快捷方式。其中一些非常有用。跳跃"家庭" (ctrl + a)和" end" (crtl + e)就是其中之一。

为了实现你描述的内容,你可以使用旧的销售命令扩展。

1。找-name whatever

/发现/成才/ overe /此处/不管

2。

3。 `

4。 Ctrl + A

5。 vim space `

6。 返回

替代:

1。 vim`find -name foo`

2。 Ctrl + Alt + E

相关问题