Vim内からUnixコマンドを実行する方法は?


77

vim内でUnixコマンドを実行するにはどうすればよいですか?

回答:


103

コマンドモードEscに移動してから実行し:!unix_commandます。実行何か:バタンとプロンプトの開始は!、UNIXのシェルコマンドとして実行されます。出力が表示され、vimで作業に戻るためにキーを押すことができます。

ビジュアルモードで選択したテキストがあり、STDINとしてコマンドに送信する場合は、ヒット!!してコマンドを入力します。コマンドの結果は、選択したテキストを置き換えます。


14
また、テキストを選択!! せずにコマンドを実行し、現在のカーソル位置に結果を挿入できます。必要がない場合や必要ない場合は、STDINにデータを送信して置き換える必要はありません。
クローミー

4
また、単にコマンドの出力をドキュメントに挿入する場合は、単に実行します:r!unix_command。これは、次のようなコマンドのために便利ですdate
YAB

2
また、シェル(または任意のインタープリター)によってviバッファーの複数の行を実行し、それらを実行結果に置き換えることもできます。例えば::10,20!shまたは、フォームの標線、'a,'b!sh
jlliagre

1
私が注目に値する他の何かは、これがあなたが使用しているOSに依存するということです。Windowsを使用している場合は、Windowsシェルコマンドを実行します。これを読んでいる多くの人はすでにそれを知っていますが、Googleから来ている人にとっては、言及する価値があると思いました。
アンドリュー

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.