Ответ 1
vim "$(find "$PWD" -name 'filename')"
или
find "$PWD" -name 'filename' -exec vim {} \;
(Кстати, вы можете отбросить "$PWD"
. find
по умолчанию запускает поиск из текущего каталога.)
Я делаю поиск $PWD-name 'filename' | vim -
ожидает, что имя файла будет открыто в редакторе vim. Но это не работает. В этом случае я уверен, что существует только один файл с именем "filename".
Также результат поиска дает полный путь к stdout.
vim "$(find "$PWD" -name 'filename')"
или
find "$PWD" -name 'filename' -exec vim {} \;
(Кстати, вы можете отбросить "$PWD"
. find
по умолчанию запускает поиск из текущего каталога.)
find . -name 'filename' -print0 | xargs -0 vim
также должен работать. Возможно, вы захотите прочитать на xargs, что полезно знать.
Упоминается в комментарии @idbrii, но мой любимый:
find . -name 'filename' -type f -exec vim {} \+
Это открывает каждый файл, найденный в его собственном буфере, готовый к навигации с помощью :next
и :prev
. Протестировано на OSX, но я уверен, что он тоже будет работать на Linux.