ここでは,基本的なviコマンドについてまとめています.本当に基本的なものだけです(もちろん基本的なコマンドだけではありません).扱うのは次のコマンドです.シェルの実行とかコマンド出力の書き出しとかは扱っていません.
- モード変更
- 移動コマンド
- 検索・置換コマンド
- 編集コマンド
- 挿入コマンド
- ファイル操作コマンド
モード変更
コマンド |
意味 |
使い方 |
例 |
Esc |
コマンドモード |
- |
- |
移動コマンド
移動(十字)
コマンド |
意味 |
使い方 |
例 |
h |
←(1文字戻る) |
数字を添えてn文字戻る |
5h |
j |
↓(1行進む) |
数字を添えてn行進む |
5j |
k |
↑(1行戻る) |
数字を添えてn行戻る |
5k |
l |
→(1文字進む) |
数字を添えてn文字進む |
5l |
移動(単語)
コマンド |
意味 |
使い方 |
例 |
w |
1単語分進む |
数字を添えてn語進む |
5w |
e |
単語の終わりまで進む |
単語の終わりからは次の語の語頭まで移動 |
- |
b |
1単語分戻る |
数字を添えてn語戻る |
5b |
移動(ジャンプ)
コマンド |
意味 |
使い方 |
例 |
0, ^ |
行頭へジャンプ |
0は行頭空白の前,^は後 |
- |
$ |
行末へジャンプ |
数字を添えるとn-1行下の行末へ |
6$ |
gg |
ファイル先頭へ移動 |
- |
- |
G |
ファイル最終行の行頭へ移動 |
数字を添えてn行目の行頭へ移動 |
5G |
移動(画面内)
コマンド |
意味 |
使い方 |
例 |
H |
画面上部 |
数字を添えて上からn行目 |
5H |
M |
画面中央 |
- |
- |
L |
画面下部 |
数字を添えて下からn行目 |
5L |
移動(ページ)
コマンド |
意味 |
使い方 |
例 |
Ctrl+f |
次のページ |
Ctrl+dで半ページ進む |
- |
Ctrl+b |
前のページ |
Ctrl+uで半ページ戻る |
- |
検索・置換コマンド
検索
コマンド |
意味 |
使い方 |
例 |
/ |
前方検索 |
パターンに正規表現を用いる |
/H.llo* |
? |
後方検索 |
パターンに正規表現を用いる |
*[1-9]day* |
n |
次の検索結果 |
数字添え可能 |
- |
N |
前の検索結果 |
数字添え可能 |
- |
置換
コマンド |
意味 |
使い方 |
例 |
s/word1 /word2 / |
word1をword2で置換 |
区切り文字に;を使うことも可能 |
s;hello/world/;good/night; |
:%s/word1 /word2 /gc |
置換 |
確認しながらファイル内すべてで置換 |
- |
編集コマンド
削除
コマンド |
意味 |
使い方 |
例 |
x |
1文字削除 |
数字を添えてn文字削除 |
5x |
d[コマンド] |
削除コマンド |
w(単語),$(行末まで),^(行頭まで),d(1行丸ごと) |
dd |
D |
カーソルから行末までを削除 |
d$と同じ |
- |
コピー&ペースト
コマンド |
意味 |
使い方 |
例 |
yy |
行のコピー |
数字を添えてn行コピー |
5yy |
p |
カーソルの下に行を貼り付け |
数字を添えてn回ペースト |
5p |
P |
カーソルの上に行を貼り付け |
数字を添えてn回ペースト |
5P |
元に戻す
コマンド |
意味 |
使い方 |
例 |
u |
元に戻す |
数字を添えてn回元に戻す |
- |
挿入コマンド
挿入コマンドはすべて挿入モードに切り替わります.
挿入
コマンド |
意味 |
使い方 |
例 |
i |
直前に挿入 |
Iで行頭に挿入 |
- |
a |
直後に挿入 |
Aで行末に挿入 |
- |
o |
下の行に挿入 |
Oで上の行に挿入 |
- |
文字列置換
コマンド |
意味 |
使い方 |
例 |
s |
1文字消して文字列に置換 |
数字を添えてn文字置換 |
- |
c[コマンド] |
置換コマンド |
カーソル位置からw(単語の終わり),c(行末),f 文字 (指定した文字)まで置換 |
cc |
C |
行末まで置換 |
ccと同じ |
- |
上書き
コマンド |
意味 |
使い方 |
例 |
r |
カーソル上の1文字を上書き |
- |
- |
R |
以降の入力をすべて上書き |
Escを押すまで |
- |
ファイル操作
ファイルを開く
コマンド |
意味 |
使い方 |
例 |
:e FILENAME |
ファイルを開く |
存在しなければ新規作成 |
- |
:args |
編集ファイル一覧 |
引数を指定すると編集ファイル変更となる |
:args a.txt b.txt |
:next,:n |
次のファイルを開く |
:wnで保存して移動,:n!で保存しないで移動 |
- |
:prev |
前のファイルを開く |
:wpで保存して移動,:prev!で保存しないで移動 |
- |
ファイルの情報を見る
コマンド |
意味 |
使い方 |
例 |
Ctrl+Shift+g |
情報表示 |
ファイル名,行数,編集中のファイルのインデックスなどが表示される |
- |
ファイルを保存
コマンド |
意味 |
使い方 |
例 |
:w |
上書き保存 |
qをつけて終了,!をつけると強制保存 |
:wq, :w! |
:w FILENAME |
名前を付けて保存 |
qをつけて終了,!を付けると強制上書き保存 |
:wq/:w! FILENAME |
:w >> FILENAME |
ファイルの末尾に追加して保存 |
- |
- |
:line1 ,line2 FILENAME |
名前を付けて保存 |
line1行目からline2行目を保存 |
- |
viを終了
コマンド |
意味 |
使い方 |
例 |
:q |
終了 |
!を付けると強制終了 |
:q! |
---- 以上
こちらもよろしくお願いいたします.