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

programming Linux

vi エディタのコマンドをまとめておきます。

以下の Linux 環境を想定しています。
環境1: Raspberry Pi(bullseye、buster、他)
環境2: VPS (ConoHa VPS)

背景

Raspberry Pi を使うとき、また、VPS などのサーバーを借りたとき、Linux のコンソール画面を使うことになります。このコンソール画面上でファイルを作成、編集しようとすると、vi エディタが必要となる場面が出てきます。

そこで、vi エディタで必要なコマンドをまとめておくことにします。
vi コマンドについてネット検索をすると、詳細な説明がヒットします。しかし、詳細まで覚えるのは難しいと思います。
そこで、最低限知っておく必要があるコマンドと、覚えておくと便利なコマンドとにわけ、まとめておくことにします。

最小限必要なコマンド

ファイルを開いて参照し、その後、保存せずに終了する場合

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

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

※ vi エディタには、コマンドモードと編集モードがあります。vi エディタを起動すると、コマンドモードになります。カーソルを移動させることで各部分を参照できます。
※ コマンドモードの状態で、[:] → [q] → [!] キーを順に押すと、:q! (vi コマンドで強制終了の意味。書き込みをせずに終了する、の意味)の文字列が画面最下段に表示され、[enter] キーを押すことで、vi エディタが終了します。
※ 強制終了時にもし、編集モードに入っていたら、[esc] キーを押すと 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 コマンドについてまとめました。
vi エディタのよいところは、マウス不要で軽快に動く、といったところだと思います。

最初、①、②だけを覚えて、慣れてきたらそれ以降を覚えていくという感じになると思います。
VPS などのサーバーをレンタルして WordPress の設定を自力で行うとき、vi エディタが必要になると思います。最後のファイルの差し込みは、WordPress のパスワードを設定する際に使いました。
後半のコマンドはすぐに忘れてしまい、都度、ネット検索するのも煩雑でした。そこで、よく使うコマンドを1か所にまとめ、公開しておくことにします。

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

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