コマンド置換を使用できます:
vim $(find -name somefile.txt)
または
find -name somefile.txt -exec vim {} \;
これを試してください:
<オール>
:r!find /<path> -name 'expression'
検索が完了すると、結果が vim に表示されます。
または
試してみてください:
find /<path> -name > results.txt
vim results.txt
コマンドを再度実行しても構わない場合:Up を押します。 xargs
を追加します 指図。または履歴置換を使用して実行
!! | xargs vim # won't work with file names containing \'" or whitespace
!! | xargs -d \\n vim # GNU only (Linux, Cygwin)
ksh と zsh では機能するが bash では機能しないコマンドの出力を保存する軽量な方法があります (パイプラインの出力側を親シェルで実行する必要があります)。コマンドを関数 K
にパイプします。 (以下の zsh 定義)、これ k 出力を変数 $K
に保存します .
function K {
K=("${(@f)$(tee /dev/fd/3)}") 3>&1;
}
find … |K
vim $K
各コマンドの出力を自動的に保存することは、シェルだけでは実際には不可能です。エミュレートされた端末でコマンドを実行する必要があります。 script
内で実行することで実行できます (BSD ユーティリティですが、Linux や Solaris を含むほとんどの unices で利用可能です)。これは、セッションのすべての出力をファイルに保存します (typescript の最後のプロンプトを確実に検出するには、まだ少し努力が必要です)。