Vimの基礎知識

【Vimの基礎知識】ゼロから始めるVim入門とモード終了、コマンド基本操作

Linux環境でよく目にする「Vim」という名前。サーバーにログインしたら突然Vimが開いてしまい、「どうやって入力するの?」「保存や終了ができない!」と困った経験をした人も多いのではないでしょうか。

Vimはプログラマーやシステム管理者が日常的に使う強力なテキストエディタですが、一般的なエディタと違って「モード」という仕組みを持つため、初心者には最初のハードルが高く感じられます。

本記事では、ゼロから始める人向けにVimの基本概要を紹介し、特につまずきやすい「モードの仕組み」「保存と終了の方法」「基本的なコマンド操作」をわかりやすく整理します。

初めての一歩を踏み出す方が迷わず進めるよう、Vimの基礎をしっかり解説していきます。

Vimとは?

VimはLinuxやUnix環境で標準的に利用されるテキストエディタです。システム管理やプログラミングを行う人にとって欠かせないツールであり、多くのサーバーに標準搭載されているため追加のインストールが不要な場合もあります。

特徴的なのは「モード」という概念で、文字を入力するモードとコマンドを操作するモードを切り替えて使う点です。

慣れるまでは戸惑いますが、仕組みを理解することで効率的かつ正確に作業を進められるようになります。

Vimの基本概要

Vimは「Visual editor iMproved」の略で、古くから利用されているviエディタを改良したものです。

Vimは、単なる文字入力にとどまらず、検索や置換、マクロ、プラグインなど多彩な機能を備えています。ターミナル上で動作するためリソースをほとんど消費せず、リモートサーバー上でも快適に利用できます。

開発環境が限定される場面でも安定して利用できることが、長年にわたって支持されている理由の一つです。

viとの違い

Vimはviをベースにしていますが、機能面で大きく進化しています。

例えば、コマンドの取り消し回数が無制限に行えること、色分け表示による視認性の向上、プラグインによる拡張性の高さが挙げられます。viしか入っていない環境でも最低限の編集は可能ですが、Vimを使うことでより快適かつ効率的に作業が進められます。

実際の現場では、サーバーによってviかVimかが異なる場合があるため、両方に慣れておくと安心です。

Vimを使うメリット

Vimを習得することで得られる最大のメリットは、キーボード操作だけで完結する効率の高さです。

マウスに手を伸ばす必要がなく、コマンドやショートカットを駆使することで編集スピードが格段に上がります。また、Vimは軽量で動作が早いため、大規模なログファイルやソースコードを扱う場面でもストレスがありません。さらにプラグインを導入すればIDEのように補完やデバッグ機能も追加でき、自分好みに環境をカスタマイズできます。

こうした利点があるため、学習コストは多少高くてもエンジニアにとって非常に価値のあるスキルとなります。

Vimを覚える意義

Vimを学ぶ最大の理由は「どの環境でも同じ操作ができる」ことにあります。

LinuxやUnix系システムでは、WindowsやMacのようにマウス中心のGUI操作は前提とされておらず、そのためテキストエディタを自在に扱える力が欠かせません。

では、なぜ数あるエディタの中でVimが最も広く利用され、現場の共通言語のような存在になっているのでしょうか。

統一性と効率性

その答えは「統一性」と「効率性」にあります。

Vimは一度身につければ、どの環境でも同じ操作で作業できるという統一性を持ち、さらに最小限のキー操作で効率的に編集できる特徴があります。

だからこそ、エンジニアを目指すならVimの習得は避けて通れません。特に中級以上を志すのであれば、普段の作業をVimに統一しておくことが重要です。

どの環境でも同じ操作で作業できるため、学び直しの手間や環境ごとの切り替えによるストレスを減らせます。

異なる環境での再現性

この「統一」を支えてくれるのが、WindowsやMacでも利用できるVimキーバインドです。

特に現在最も普及しているVSCodeにはVim拡張が用意されており、GUI環境でもLinuxサーバーのCUI環境でも同じ操作感を再現できます。こうして身につけたスキルを環境を問わず活かせるのは、大きな強みとなります。

Vimが支持され続ける理由

Vimは初めて触れる人にとって決してユーザーフレンドリーなツールではありません。

それでも数十年にわたって第一線にあり続けたのは理由があります。

マウス操作を排除し、カーソルを正しく行に合わせられれば一瞬で編集が終わる――その圧倒的な効率性です。今はまだ実感しづらいかもしれませんが、一言で言えば「ライン上へカーソルを乗せたら勝ち」。

この感覚こそがVim最大のメリットです。

今後の学習への展望

この「Vimの基礎知識」シリーズを読み進めていけば、その言葉の意味を必ず理解できるでしょう。

後半では「VSCodeでVimを使う方法」も紹介する予定です。Vimを今から学んでおくことは、環境を問わず使える強力なスキルを将来の自分に残すことにつながります。

さらに、シリーズを通じて体系的に学ぶことで、統一した操作体系を身につけるだけでなく、記事を通じてスキルを着実に伸ばすことができます。

Vimの導入手順

Vimを利用するためには、まず環境にインストールされているかを確認し、必要に応じて導入することから始めます。

ほとんどのLinuxディストリビューションでは標準で利用できますが、最新版を利用することでより快適に操作できる場合があります。

また、起動と終了の基本を理解しておくことで「保存できない」「終了できない」といった初心者がつまずきやすい問題をスムーズに解消できます。

ここではインストールから基本的な起動と終了までを整理します。

インストール方法

Linux環境でVimを導入する方法はディストリビューションによって異なります。RHEL系とDebian系ではコマンドが違うため、自分の環境に合わせて確認してください。

以下の例はRHEL系(CentOSやAlmaLinux)でのインストール方法です。

sudo dnf install vim -y 【出力例:】

Dependencies resolved.
==================================================================
Package Arch Version Repository Size
==================================================================
Installing: vim-enhanced x86_64 2:8.2.2637-20 baseos 1.5 M
Installed:
vim-enhanced-2:8.2.2637-20.x86_64
Complete!

Debian系(Ubuntuなど)では次のように入力します。

sudo apt update
sudo apt install vim -y

【出力例:】

Get:1 http://archive.ubuntu.com jammy InRelease [270 kB]
Get:2 http://archive.ubuntu.com jammy-updates InRelease [119 kB]
...
Setting up vim (2:8.2.3995-1ubuntu2.3) ...
Processing triggers for man-db (2.10.2-1) ...

なお、RHEL系でupdateを省略できる理由は、dnfやyumが実行時に自動でリポジトリのメタデータを確認・更新する仕組みを持っているためです。

一方、Debian系のaptはキャッシュ更新を明示的に行わないと古い情報を参照してしまう可能性があります。

この違いを理解しておくと、環境ごとに適切な手順を選べるようになります。

起動と終了の基本

Vimがインストールできたら、まずは起動と終了の流れを確認しておきましょう。起動はファイル名を指定してコマンドを実行します。

vim test.txt

【出力例:】

~ ~ ~ "test.txt" [New File]

終了はコマンドモードに切り替えて「:q」を入力します。ファイルを編集した場合は保存して終了する必要があり、次のように実行します。

:wq

【出力例:】

"test.txt" 1L, 10C written

エディタが閉じてターミナルのプロンプトに戻ります。

この流れを理解しておくと、突然Vimが起動した場面でも落ち着いて対処できるようになります。導入段階でここまで押さえておけば、次のステップで学ぶモードやコマンド操作にスムーズにつなげられます。

Vimの基本操作

Vimを正しく使えるようになるためには、基本的な操作の流れを理解しておくことが重要です。

特に初心者がつまずきやすいのは「文字が入力できない」「保存ができない」「終了できない」といった場面です。これらはVim独自の「モード」の存在や、保存・終了コマンドの使い方を知らないことが原因です。

ここでは、Vimを起動してファイルを開き、文字を入力し、保存して終了するまでの一連の流れを詳しく解説します。

モードの種類と役割

Vimの最大の特徴はモードを切り替えて操作する仕組みです。モードを理解していないと「キー入力が反応しない」と感じてしまうので、まずは役割を整理しておきましょう。

モード役割切り替え方法
ノーマルモードVim起動直後の状態で、移動や削除などのコマンドを実行できる「Esc」キーで戻る
挿入モード文字を入力できる状態。通常のエディタと同じ感覚で使える「i」キーを押す
コマンドラインモード保存や終了、検索などを実行できる状態「:」を入力する

起動直後はノーマルモードです。文字を入力したいときは「i」で挿入モードに切り替え、操作が終わったら「Esc」でノーマルモードに戻ります。

この切り替えを意識することで、入力できないときの原因も理解できるようになります。

ファイルを開いて新規作成する方法

Vimではファイルを開く操作が、そのまま新規作成につながります。

すでに存在するファイルを指定すれば内容が表示され、存在しないファイル名を指定すれば新しいファイルとして扱われます。

これを理解しておくと「新規作成コマンドがない」という戸惑いを避けられます。

まずは次のようにコマンドを実行します。

vim sample.txt

【出力例:】

~
~
~
"sample.txt" [New File]

画面に「~」が縦に並んでいるのは、その行が空であることを示しています。

つまりファイルにまだ何も書かれていない状態です。画面下部に「[New File]」と表示されていれば、新しいファイルが作成されて開かれたことを意味します。

この状態で「i」を押すと挿入モードに切り替わります。

画面左下に「-- INSERT --」と表示され、文字を入力できる状態になります。

Hello Vim!

【出力例:】

Hello Vim!
~
~
-- INSERT --

先頭行に入力したテキストが表示され、下部に「-- INSERT --」と出ていれば挿入モードであることが確認できます。

ここまでが「ファイルを開き、新規作成して編集を始める」までの一連の流れです。

保存コマンドの使い方

編集した内容を保存するには、まず「Esc」でノーマルモードに戻り、次に「:w」を入力します。

:w

【出力例:】

"sample.txt" 1L, 11C written

これは「sample.txt」というファイルに1行11文字を書き込んだことを意味します。もしファイル名を指定せずに起動した場合は「:w ファイル名」で新規保存できます。

:w newfile.txt

【出力例:】

"newfile.txt" [New] 1L, 11C written

この方法を知っておけば、別名保存や新規保存も自在に行えます。

終了コマンドの使い方

Vimの終了は「未保存の変更があるかどうか」で動作が変わります。状況を切り分けて使い分けると、意図しない終了や保存漏れを防げます。

変更がない場合(読み取りのみ・保存済み)

:q

【出力例:】

[user@host ~]$

エディタが閉じて、シェルのプロンプトに戻ります。

未保存の変更がある場合(保存せずに終了しようとした)

:q

【出力例:】

E37: No write since last change (add ! to override)

E37は「最後の変更が保存されていない」の意味です。保存せずに破棄して抜けたいときは強制終了を使います。

保存せずに強制終了する

:q!

【出力例:】

[user@host ~]$

未保存の変更を破棄して終了します。必要な編集まで失わないよう注意してください。

保存と終了を同時に行う方法

もっとも頻繁に使われるのが「保存して終了する」操作です。

これは次のコマンドで実行できます。

:wq

【出力例:】

"sample.txt" 1L, 11C written

このコマンドを覚えておけば、ファイルを編集して保存し、同時に終了するまでを一気に行えます。また、より短縮して「:x」と入力することも可能です。

😡

【出力例:】

"sample.txt" 1L, 11C written

:xは:wqと同じ働きをしますが、保存が不要な場合には単に終了だけを行うため効率的です。

Vim利用時の注意点

Vimは非常に強力なテキストエディタですが、初心者のうちは特有の仕組みに戸惑うことがあります。

特に多いのは「保存できない」「終了できない」といった基本操作でのトラブルです。

原因を理解しておくと、作業を止められることなく安心して利用できるようになります。

ここではVim利用時に注意すべき代表的なポイントを整理します。

保存できないときの原因と対処

Vimで保存ができない原因にはいくつかのパターンがあります。代表的なものは以下の通りです。

原因対処方法
挿入モードのまま保存を試みている「Esc」でノーマルモードに戻り、コマンドを入力する
権限がないファイルを編集している管理者権限で起動し直す(例:sudo vim /etc/hosts
保存先のパスが存在しない正しいディレクトリに移動してから再保存する

例えば、権限不足で保存できないときに「:w」を入力すると次のようなエラーが出ます。

【出力例:】

E212: Can't open file for writing

この場合は「sudo」を付けて実行することで保存が可能になります。

終了できないときの原因と対処

終了できないときの多くは、未保存の変更があるのに「:q」で閉じようとした場合です。

:q

【出力例:】

E37: No write since last change (add ! to override)

このメッセージが出たときは「保存して終了」するか「強制終了」するかを選びます。 保存して終了する場合

:wq

強制終了する場合

:q!

未保存の変更を破棄して抜けるときは便利ですが、必要な編集内容を失わないよう注意が必要です。

モード切替の落とし穴

Vimで最も多い戸惑いは、モード切替を忘れて操作がうまくいかないケースです。

モード切り替えの落とし穴

  • 入力できない → 挿入モードに切り替えていない
  • 保存できない → ノーマルモードに戻っていない
  • コマンドが打てない → コマンドラインモードに入っていない

例えば、文字が入力できないときに確認すべきは左下の表示です。

「-- INSERT --」と出ていなければ挿入モードではありません。その場合は「i」を押して切り替えましょう。

【出力例:】

Hello Vim!
~
~
-- INSERT --

このようにモード切替を正しく理解しておくと、基本的な操作で迷うことがなくなり、スムーズに作業を進められるようになります。

まとめ

ここまでVimの入門として、モードの仕組みや保存・終了の基本コマンドを体系的に解説しました。最初はとっつきにくい操作体系ですが、一度理解してしまえばLinux作業のスピードを大きく高める強力な武器になります。

要点整理

今回の内容を振り返ると、次の点が重要です。

ポイントメリット
モードの存在を理解する入力・保存・終了の混乱を防ぎ、正しく操作できる
保存コマンド「:w」や終了コマンド「:q」の基本作業中のファイルを確実に管理できる
強制終了「:q!」の意味を把握するトラブル時にも安心して作業を切り上げられる
保存と終了を同時に行う「:wq」「:x」作業効率が上がり、無駄な手間を省ける

基礎を押さえることで「保存できない」「終了できない」といった初心者特有のつまずきを回避できます。

次に学ぶべき操作や設定

保存と終了が理解でき

たら、次はより実用的な操作に進むと良いでしょう。

ポイント

  • テキスト編集の基本操作(挿入・削除・移動)
     カーソル移動や文字削除など、日常的に使う操作を習得します。
  • 検索・置換・コピー・ペースト
     テキスト処理の効率が一気に上がり、実務での利用価値が広がります。
  • .vimrcによる設定変更
     自分に合ったショートカットや表示設定を整えることで、Vimをさらに使いやすくできます。

🟢 Vimの基礎知識シリーズは段階的に進められる構成になっており、入門から実践、応用、カスタマイズまで体系的に学べます。

次のおすすめ記事

本サイトにて記載のすべてのスクリプト利用により発生した利用者の損害全てに対し、いかなる責任をも負わないものとし、損害賠償をする一切の義務はないものとします。また、この記事は、実際の案件対応を通じて得た知見をもとに筆者が作成したものであり、全コードと解説は著者本人による設計・検証結果に基づいています。

よく読まれている記事

1

「シェル」と「シェルスクリプト」という言葉を聞いたことがありますか?どちらもLinuxやMacのターミナルで使われるものですが、それぞれの役割や使い方には違いがあります。 本記事では、「シェル」と「シ ...

2

「私たちが日々利用しているスマートフォンやインターネット、そしてスーパーコンピュータやクラウドサービス――これらの多くがLinuxの力で動いていることをご存じですか? 無料で使えるだけでなく、高い柔軟 ...

3

この記事は、Linuxについて勉強している初心者の方向けに「Shellスクリプト」について解説します。最後まで読んで頂けましたら、Shellスクリプトはどのような役割を担っているのか?を理解出来るよう ...

-Vimの基礎知識