vi コマンドのまとめ 【Linux】

programming Linux

Linux を扱うにあたりほぼ必須となる vi エディタのコマンドをまとめておきます。
よく使うものを上のほうに並べています。

最小限必要なコマンド

ファイルを開いて保存せずに終了する場合

① ファイルを開いて書き込みをせずに終了する場合はつぎのキー操作で動作します。
(vi 起動 → 上下左右移動 → 書き込みせず終了)

# vi text1.txt
h, j, k, l でカーソル移動
:q!
text1.txt を開く → コマンドモードになる
上下左右にカーソルを移動  h:左  j:下 k:上 l:右
強制終了 quit

※ 強制終了時にもし、編集モードに入っていたら、[esc] キーを押すと vi の編集モードを抜けることができます。
その後、[:] → [q] → [!] キーを順に押すと、:q! (vi コマンドで強制終了の意味)の文字列が画面最下段に表示され、[enter] キーを押すと、vi エディタが終了します。

ファイルを開いて編集・保存後、viエディタを終了する場合

② ファイルを編集する場合(コマンドモード→編集モード→コマンドモード→書き込んで終了)

# vi text1.txt
h, j, k, l で編集する場所に移動
i
(文字入力する)
[esc]
:wq
text1.txt を開く → コマンドモードになる
上下左右に移動
コマンドモード → 編集モードに入る
i: カーソル前で編集モードに入る
a: カーソル後で編集モードに入る
o: カーソルの次の行で編集モードに入る
O: カーソルの前の行で編集モードに入る
[esc] で、編集モードからコマンドモードに戻る
書き込んで終了 ( write & quit )

削除する場合(1文字削除、行削除)

# vi text1.txt
h, j, k, l で1文字削除したいところに移動
x
j, k で行削除したい行に移動
dd
:q!
または :wq
text1.txt を開く → コマンドモードになる
上下左右に移動(編集モードに入った場合は [esc])
1文字削除する
上下に移動する
1行削除する
編集せずに保存する場合は :q!
書き込んで終了する場合は :wq

追加で覚えていけばよいコマンド

行のコピー&ペーストをする場合

j, k でコピーする行に移動
yy
j, k でペーストする行に移動
p
コピーする行に移動する
yy で行コピー
ペーストする行に移動する
p でペースト

文字列を検索する場合

:/ (文字列)
n、N
(文字列)を検索する
下(そのつぎ)、上を検索する

ジャンプする場合

gg、G
0、$
ファイルの冒頭、ファイルの末尾に移動する
行の冒頭、行の末尾に移動する

覚えておくと便利なコマンド

行番号表示、指定行に移動、指定行に別のテキストファイルを差し込み

# vi text2.txt
:set number 、または、:set nonumber
:10 [enter]
:5 -r text1.txt
text2.txt を開く
行番号を表示する、または、表示しない
10 行目に移動する
5 行目に text1.txt の内容を挿入する

※ 上で :5 -r text1.txt は、事前にファイル text1.txt を同じディレクトリに作成しておく必要があります。

まとめ

vi コマンドについてまとめました。
Linux の VPS サーバを扱う際、ほぼ必須です。ひさびさに使うと忘れていますね。
マウス操作不要で軽快に動くところがよい、といったところです。

最初、①、②だけを覚えて、慣れてきたらそれ以降を覚えていくという感じになると思います。
最後のファイルの差し込みは、WordPress のパスワードを設定する際に使いました。
後半はすぐに忘れてしまい、都度、ネット検索をするのも煩雑でしたので、1か所にまとめ、公開しておきます。

関連リンク
・ ファイル操作でよく使うコマンド 【Linux】

タイトルとURLをコピーしました