перенаправить вывод команды 'find' в 'vim' - PullRequest
16 голосов
/ 01 февраля 2011

Я выполняю поиск $ PWD -name 'filename' | vim -

ожидание открытия имени файла в редакторе vim. Но это не работает. В этом случае я уверен, что существует только один файл с именем «имя файла».

Также результат поиска дает полный путь на стандартный вывод.

Ответы [ 3 ]

25 голосов
/ 01 февраля 2011
vim "$(find "$PWD" -name 'filename')"

или

find "$PWD" -name 'filename' -exec vim {} \;

(Кстати, вы можете сбросить "$PWD". find запускает поиск из текущей директории по умолчанию.)

8 голосов
/ 02 февраля 2011

find . -name 'filename' -print0 | xargs -0 vim

также должно работать.Возможно, вы захотите почитать о xargs, о котором удобно знать.

2 голосов
/ 21 февраля 2018

Упоминается в комментарии @ idbrii, но мой любимый:

find . -name 'filename' -type f -exec vim {} \+

Это открывает каждый файл, найденный в его собственном буфере, готовый для навигации по :next и :prev.Протестировано на OSX, но я уверен, что оно будет работать и на Linux.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...