新Linux入門|viエディタ(コマンドモード)

Linuxを扱ううえで欠かせないのが「viエディタ(ヴィーアイ エディタ)」です。
サーバーの設定ファイルを編集したり、シェルスクリプトを作成したりするときに、
最もよく使われる定番のテキストエディタです💡

viエディタは非常に軽量で、CUI(文字ベースの画面)上で動作します。
マウス操作はできませんが、コマンドだけで高速に編集できる のが特徴です!

✏️ viエディタの基本構造

viには大きく分けて「3つのモード」があります。

モード名内容主な用途
コマンドモードファイルの移動・削除・保存などを行うモード操作中心
入力モード実際に文字を入力するモード編集中心
エクスモード(コロンモード): から始まるコマンドで保存・終了などを実行ファイル操作中心

💬ポイント
通常、vi ファイル名 でファイルを開くと、最初は コマンドモード に入ります。
そこから i キーを押すと入力モードに切り替わり、
Esc キーで再びコマンドモードに戻る — というのが基本の流れです。

🧭 コマンドモードとは?

コマンドモードは、viの中心的な操作モード です。
 このモードではテキストの編集そのものではなく、**「移動・削除・保存・終了」**などをキーボード操作だけで行います。

慣れてくると、まるでキーボードが自分の手足のように動くようになりますよ✨

⌨️ viエディタの基本操作(コマンドモード)

以下の表は、コマンドモード で使う代表的なコマンドの一覧です👇

コマンド説明
kカーソルを一行上に移動する。
jカーソルを一行下に移動する。
hカーソルを一文字左に移動する。
lカーソルを一文字右に移動する。
w次の単語の先頭に移動する。
b前の単語の先頭に移動する。
^行の先頭に移動する。
$行の末尾に移動する。
ggファイルの先頭に移動する。
Gファイルの末尾に移動する。
:q編集内容に変更がない場合、エディタを終了する。
:q!変更を破棄して強制的に終了する。
:wファイルを保存する。
:wq保存して終了する(:x と同義)
😡ファイルを保存して終了する(:wq と同じ)
:e!変更を破棄してファイルを再読み込みする。

📘 コマンドモードの使用例

➀ファイルを開く

[suzuki@AlmaLinux ~]$ vi test.txt

💡 viエディタで test.txt を開きます。ファイルがなければ新規作成されます。

➁移動操作

h   ← 左に1文字移動  
l   → 右に1文字移動  
j   ↓ 下に1行移動  
k   ↑ 上に1行移動

🧭 カーソルキーを使わなくても、h・j・k・lで移動できます。これはviの基本中の基本です!

➂ファイルの先頭・末尾へジャンプ

gg   → ファイルの先頭へ移動  
G    → ファイルの末尾へ移動

📄 長い設定ファイルでも、すぐに目的の位置へジャンプできます。

➃保存・終了関連コマンド

:w     → ファイルを保存  
:q     → 編集内容に変更がない場合に終了  
:wq    → 保存して終了  
:q!    → 変更を破棄して強制終了  
:e!    → 現在の変更を破棄してファイルを再読み込み

💬 保存したいとき、やり直したいとき、それぞれ使い分けるのがポイントです。

🧩 コマンド入力時の流れ

1️⃣ viを起動

[suzuki@AlmaLinux ~]$ vi sample.txt

2️⃣ コマンドモードで移動や削除などを実施

  • dd → 1行削除
  • yy → 1行コピー
  • p → 貼り付け

3️⃣ :(コロン)コマンドで保存・終了

  • :w → 保存
  • :q → 終了
  • :wq → 保存して終了

💬 まとめ

vi は慣れるまでは少し難しく感じるかもしれませんが、
コマンドモードを使いこなせるようになると、まさに「手が勝手に動く」感覚になります😄

📘 ポイントまとめ

  • h, j, k, l … 基本の移動キー
  • :w … 保存
  • :q … 終了
  • :wq … 保存して終了
  • :q! … 変更を破棄して終了

このコマンドモードをマスターすれば、
設定ファイルの編集やスクリプト作成がぐっとスムーズになります✨

次は、「入力モード」 の使い方を学んで、viエディタをさらに自由自在に使えるようにしましょう💪