1
This回答状態:w !tee
は現在のバッファをstdoutに書き込みます。なぜ、どのように機能するのですか? :x !tee
または:w !cat
と書くことはできますか?この場合の感嘆符の意味は何ですか? (私はそれが強制的な操作ではないと仮定します)tee
コマンドが存在する場合(Windowsではなく)にのみ動作しますか?どのように:Vimでw!teeが動作する
This回答状態:w !tee
は現在のバッファをstdoutに書き込みます。なぜ、どのように機能するのですか? :x !tee
または:w !cat
と書くことはできますか?この場合の感嘆符の意味は何ですか? (私はそれが強制的な操作ではないと仮定します)tee
コマンドが存在する場合(Windowsではなく)にのみ動作しますか?どのように:Vimでw!teeが動作する
!
がvim
にはシェルコマンドであり、ファイル名ではないことを示しています。したがって:w !tee
または:w !cat
は入力としてそれらのコマンドにvimバッファを与えます。バッファ内容をstdout
に送信します。
お試し:w !wc -l
を試してください。バッファーの行数はstdout
になります。
コマンドの出力をvim bufferに読み込むこともできます。シェルコマンドでread
コマンドを使用することができます。たとえば、:read !date
はシェルでdate
コマンドを実行し、出力をvimバッファに戻します。
ありがとうございます、それは私のために明確になっています!あなたの答えを使って、私は[documentation page](http://vim.wikia.com/wiki/Display_output_of_shell_commands_in_new_window)を見つけることができました。 –