いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

findコマンドの結果をvimでまとめて開く

f:id:gsf_zero1:20211217140202g:plain

概要

vim限定という話ではないのですが、知ってるとちょっと便利なので、ここにメモメモ。。。

ファイルを探すときに find コマンドさんはしょっちゅう使います。

んで、この結果を vim でまとめて開きたいってことも結構あります。

といって、おもむろに

$ find . -type f -name "Makefile" | xargs vim

ってすると、

Vim: 警告: 端末からの入力ではありません

って警告が出て、最悪コンソールに何も入力できなくなったりしちゃいます。

これは、xargsのデフォルトの挙動が「stdinを/dev/nullに向ける」という仕様のためです。

てことで、以下にまとめて開くコマンドに記載します。

やり方はいろいろあるのですが、私が知っている分です。

コマンド置換で開く

$ vim $(find . -type f -name "Makefile")

xrags の -o オプションを指定して開く

$ find . -type f -name "Makefile" | xargs -o vim

find の -exec オプションで + を指定

$ find . -type f -name "Makefile" -exec vim {} +

参考情報

superuser.com

qiita.com


過去の記事については、以下のページからご参照下さい。

  • いろいろ備忘録日記まとめ

devlights.github.io

サンプルコードは、以下の場所で公開しています。

  • いろいろ備忘録日記サンプルソース置き場

github.com

github.com

github.com