2

How can I use find results as a command line argument for another process?

For example:

find -type f -iname "server*error*log" | vim ??

How to make vim to open returned filename?

2 Answers 2

4

You need to use the -exec option of find:

find -type f -iname "server*error*log" -exec vim {} \;

The placeholder {} will get replaced by the actual filename. The -exec command needs to get terminated with the \;.

Sign up to request clarification or add additional context in comments.

Comments

1

If you want not just one file, but many, to be acted on by one program (in your case editing in Vim), I think you want to pass it to xargs:

find -type f -iname "server*error*log" | xargs vim

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.