vimでファイルを開かずexコマンド実行だけ行う方法

  • 9
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

タイトルの通りです。調べても分かんね、という声を耳にしたので共有メモ

例えばプラグインの管理にneobundleを使っていて、プラグインの一括更新を:NeoBundleInstall!で行いたい(けどいちいちファイルは開きたくない)って場合はこんな感じ

  • exコマンドを羅列したファイルを用意する。このとき最終行はq(もしくはq!)にしてvimが終了するようにしておく
$ vim excmd.txt

NeoBundleInstall!
q!
  • vimを-e -Sオプション付きで実行する。この時に-Sの引数として先ほどのexコマンド羅列ファイルを指定する
% vim -e -S excmd.txt
 : (ズラズラと更新ログが表示される)

%
  • -e-Sオプションについて
       -e          Start Vim in Ex mode, just like the executable  was  called
                   "ex".

       -S {file}   {file}  will be sourced after the first file has been read.
                   This is equivalent to -c "source  {file}".   {file}  cannot
                   start with '-'.  If {file} is omitted "Session.vim" is used
                   (only works when -S is the last argument).