関連情報
GitHub - devlights/blog-summary: ブログ「いろいろ備忘録日記」のまとめ
概要
以下、自分用のメモです。よく忘れるのでここにメモメモ。。
大した話では無いですが、よく findの結果でvimで開きたい
という相談を受けます。
その人の動きを見てみると、findのコマンドをまず実行して出てきた結果をコピー(覚えて)、それからvimを起動してそのパスを指定して開くという操作をしてました。特に間違っている訳ではないですが、ちょっと面倒ですよね。
最近のシェルだと $( )
でコマンドの結果を指定できますので、以下のように出来ます。
$ vim $(find ・・・)
これで、findで見つかったファイル全部が引数 (arg) に追加された状態で vim が起動してくれます。
以下、例です。
$ ls -1 Dockerfile LICENSE README.md Taskfile.yml builder cmd examples go.mod go.sum main.go mapping revive.toml runner tags try-golang # # 788ファイルある # $ find . -name '*.go' -type f | wc -l 788 # # 全部 vim に指定して開く # $ vim $(find . -name '*.go' -type f) 788 個のファイルが編集を控えています
別のやり方として、 xargs を使って渡すというのも出来ますね。
$ find . -name '*.go' -type f | xargs -o vim 788 個のファイルが編集を控えています
この場合は、xargs コマンドに -o
オプションをつけるのを忘れないようしないといけません。
-o
をつけてないと、その後コンソールがおかしくなるはずです。
参考情報
おすすめ書籍
過去の記事については、以下のページからご参照下さい。
いろいろ備忘録日記まとめ
サンプルコードは、以下の場所で公開しています。