viのコマンドはこれだけ覚えておけば十分!
僕が日常的に使用するviのコマンドの一覧です。これだけ覚えておけば、viの操作で困ることはほとんどありません。
終了
通常終了
:q
強制終了
:q!
通常保存&通常終了
:wq
強制保存&強制終了
:wq!
保存
通常保存
:w
強制保存
:w!
カーソル移動
右に移動
l
左に移動
h
上に移動
k
下に移動
j
ファイルの先頭に移動
:0
ファイルの最後に移動
:$
指定した行に移動
:行番号
入力
現在位置から入力
i
次の文字から入力
a
次の行から入力
o
コピー
現在行をコピー
yy
複数行をコピー
(1) ms … (コピー開始行にマーク) (2) me … (コピー終了行にマーク) (3) :'s,'ey … (開始行〜終了行の範囲をコピー)
現在位置から行末までコピー
y$
現在位置から文字Cの直前までコピー
ytC … (Cは任意の文字)
現在位置から文字Cまでコピー
yfC … (Cは任意の文字)
削除
現在行を削除
dd
全ての行を削除
%d
複数行を削除
(1) ms … (削除開始行にマーク) (2) me … (削除終了行にマーク) (3) :'s,'ed … (開始行から終了行の範囲を削除)
現在位置から行末まで削除
d$
現在位置から文字Cの直前まで削除
dtC … (Cは任意の文字)
現在位置から文字Cまで削除
dfC … (Cは任意の文字)
貼り付け
直前にコピー・削除した内容を貼り付け
p
検索
文字列を下に向かって検索
/文字列
文字列を上に向かって検索
?文字列
置換
現在行の置換前文字列を一つだけ置換後文字列に置換
:s/置換前文字列/置換後文字列/
現在行の置換前文字列を全て置換後文字列に置換
:s/置換前文字列/置換後文字列/g
全ての行の置換前文字列を一つずつだけ置換後文字列に置換
:%s/置換前文字列/置換後文字列/
全ての行の置換前文字列を全て置換後文字列に置換
:%s/置換前文字列/置換後文字列/g