2016-04-12 8 views
1

This回答状態:w !teeは現在のバッファをstdoutに書き込みます。なぜ、どのように機能するのですか? :x !teeまたは:w !catと書くことはできますか?この場合の感嘆符の意味は何ですか? (私はそれが強制的な操作ではないと仮定します)teeコマンドが存在する場合(Windowsではなく)にのみ動作しますか?どのように:Vimでw!teeが動作する

答えて

3

!vimにはシェルコマンドであり、ファイル名ではないことを示しています。したがって:w !teeまたは:w !catは入力としてそれらのコマンドにvimバッファを与えます。バッファ内容をstdoutに送信します。

お試し:w !wc -lを試してください。バッファーの行数はstdoutになります。

コマンドの出力をvim bufferに読み込むこともできます。シェルコマンドでreadコマンドを使用することができます。たとえば、:read !dateはシェルでdateコマンドを実行し、出力をvimバッファに戻します。

+0

ありがとうございます、それは私のために明確になっています!あなたの答えを使って、私は[documentation page](http://vim.wikia.com/wiki/Display_output_of_shell_commands_in_new_window)を見つけることができました。 –

関連する問題