如何用vi打开找到的文件?管道“查找”输出到 vi

mic*_*imo 12 vim console find

我有一个文件,/home/user/important.txt. 为了找到它,我使用:

find /home/user -type f -name 'important'
Run Code Online (Sandbox Code Playgroud)

然后,我想使用管道在Vim编辑器中打开该文件。

我怎样才能做到这一点?

就像是

find /home/user -type f -name 'important' | vi
Run Code Online (Sandbox Code Playgroud)

小智 13

在'important'后面添加*通配符,也可以使用以下命令:

vim $(find /home/user -name "important*")
Run Code Online (Sandbox Code Playgroud)

  • @Serg 打印是默认操作,所以不。 (2认同)

小智 10

您可以-execfind. 使用以下命令:

find /home/user -type f -name 'important' -exec vi {} \;
Run Code Online (Sandbox Code Playgroud)

  • @micgeronimo 这是`exec` 语法的一部分。`{}` 将被替换为文件名,`\;` 用于表示 `exec` 的命令结束。 (4认同)

小智 8

用:

find ./ -name 'important.txt' -print0 | xargs -0 vi
Run Code Online (Sandbox Code Playgroud)

这行得通,而且很简单。

如果你不需要管道,那么你可以试试这个:

find ./ -name 'important.txt' -exec vi {} \;
Run Code Online (Sandbox Code Playgroud)