SOFTELメモ Developer's blog

bashのviモードでコマンドラインをviっぽく操作する

2025/04/16 linux

問題

bashにviモードというのがあるそうですね?

答え

bashのデフォルトでは、Ctrl+Wでパラメータを切り取ったり、Ctrl+Yで貼り付けたり……といった操作ができるが、これはbashのemacsモード。

bashのviモードにすると、viっぽく操作できるようになる。

viモードを有効化するには

以下コマンドを実行

set -o vi

モードの表示は環境によってはできないかもしれない。

set show-mode-in-prompt on

viモード操作例

ESCでノーマルモード。Ctrl+[ でもOK。

h, l, 0, ^, $ でカーソル移動可能。

行内の移動もvimと同じ。
f+文字, F+文字 で文字の位置まで移動可能。

w, b, W, B, e, E で単語の移動が可能。

x, X, d, D, c, C で削除可能。

コマンド入力したくなったら、i, a, I, A, R でインサートモードへ。
行末に入力したい → A、先頭に入力したい → I など、vimと同じ。

/文字列、?文字列 、n、N で履歴検索。

k, - で1つ古い履歴へ。
j, + で1つ新しい履歴へ。

vimでできる操作がだいたいできるので、vimを使える人はだいぶ楽にいろんなことができる。

関連するメモ

コメント