2

GNUスクリーンウィンドウでこのようなことをすると、そのウィンドウが奇妙な方法で応答し始めるという奇妙な問題があります

ls *.cpp | xargs vim

vim を終了した後、画面ウィンドウにコマンドが表示されません。CR をエコーし​​ません。

助言がありますか?

4

3 に答える 3

3

配管はvimのstdinを変更し、問題を引き起こします。代わりにこれを試してください(bash、zshなどの場合):

vim $(find . -name "*.cpp")
于 2012-06-25T18:41:00.060 に答える
2

このようなパイプで Vim を使用すると、おそらく次の警告に気付くでしょう:

Vim: Warning: Input is not from a terminal

これは、Vim が想定どおりに機能しないことを示しています (つまり、対話モードでは、Ex コマンドを処理することで「バッチ モード」でも使用できます)。これは、Vim が終了した後に経験する奇妙さを説明しています。

于 2012-06-25T11:42:36.220 に答える
2

どうvim *.cppですか?

たぶんfor file in *.cpp; do vim "$file"; done働くこともできます。各ファイルを編集して終了します。

または、次のコマンドでvimすべてのファイルを開始して追加します。cpp:argadd *.cpp

于 2012-06-25T10:53:37.337 に答える