Vimのコマンドの使い方や基本的な操作方法を解説

Vimのコマンドの使い方や基本的な操作方法を解説

公開: 更新:
CodeCampが提供するDX人材育成が可能なプログラミングやITが学べる公開講座


Vimで起動・保存・終了をするコマンド

Vimを使い始めたとき、まず困るのがファイルの開き方や保存方法、終了の仕方です。通常のテキストエディタと異なり、Vimは特殊なコマンドで操作するため、最初に基本的な操作を覚える必要があります。

起動・保存・終了に関する基本的なコマンドとして、以下の4つがあります。

  • ファイルを開いて起動する
  • 上書き保存する
  • 保存して終了する
  • 保存せずに終了する

それぞれのコマンドは使用頻度が高く、Vimを扱う上で必須の知識です。各コマンドの具体的な使い方について、詳しく解説していきます。

ファイルを開いて起動する

Vimでファイルを開くには、ターミナルで「vim」コマンドの後にファイル名を指定します。基本的な書き方は「vim ファイル名」の形式で記述します。

vim sample.txt

上記のコマンドでは、sample.txtというファイルを開きます。指定したファイルが存在しない場合、新しいファイルとして作成されます。

上書き保存する

編集中のファイルを保存するには、コマンドラインモードで「:w」を実行します。コマンドラインモードとは、コロン記号から始まるコマンドを入力するモードのことです。

:w

上記のコマンドでは、現在編集しているファイルを上書き保存します。ファイル名を指定していない新規ファイルの場合、「:w ファイル名」と入力することによって名前を付けて保存できます。

保存して終了する

ファイルを保存してからVimを終了するには、「:wq」コマンドを使用します。このコマンドは「:w」と「:q」を組み合わせたもので、保存と終了を同時に実行します。

:wq

上記のコマンドでは、編集内容を保存した上でVimを終了します。最も頻繁に使用する終了方法で、作業を完了する際に便利です。

保存せずに終了する

編集内容を破棄してVimを終了するには、「:q!」コマンドを実行します。このコマンドは、変更を保存せずに強制的に終了します。

:q!

上記のコマンドでは、編集した内容を保存せずにVimを閉じます。誤って編集してしまった場合や、変更を取り消したい場合に使用します。

Vimのモード切り替えコマンド

Vimには複数のモードが存在し、モードを切り替えることによって異なる操作を実行できます。主なモードはノーマルモードとインサートモードの2つで、それぞれ異なる役割を持っています。

ノーマルモードはカーソル移動や削除などの操作を行うモード、インサートモードは文字入力を行うモードです。各モードの切り替え方法について、詳しく解説していきます。

【PR】プログラミングや生成AIを無料で学べる「コードキャンプフリー」

インサートモードに切り替える

ノーマルモードから文字入力ができる状態に切り替えるには、いくつかのコマンドがあります。最も基本的なコマンドは「i」と「a」で、カーソル位置によって使い分けます。

コマンド 動作
i カーソル位置から入力開始
a カーソルの次の文字から入力開始
I 行の先頭から入力開始
A 行の末尾から入力開始
o 現在の行の下に新しい行を追加して入力開始
O 現在の行の上に新しい行を追加して入力開始

各コマンドは状況に応じて使い分けることによって、効率的に文字入力を開始できます。頻繁に使用するのは「i」と「a」の2つです。

ノーマルモードに戻る

インサートモードから元のノーマルモードに戻るには、Escキーを押します。ノーマルモードはVim起動時のデフォルトの状態で、各種コマンドを実行できます。

Esc

上記のキーを押すことによって、いつでもノーマルモードに戻れます。操作に迷ったときはEscキーを数回押すと、確実にノーマルモードに戻ることができます。

Vimでカーソルを移動するコマンド

Vimではマウスを使わずに、キーボードだけで高速にカーソルを移動できます。通常のテキストエディタの矢印キーと異なり、ホームポジションから手を動かさずに操作できるため、作業効率が大幅に向上します。

カーソル移動に関する基本的なコマンドとして、以下の3つがあります。

  • 上下左右に移動する
  • 行頭・行末に移動する
  • ファイルの先頭・末尾に移動する

それぞれのコマンドは、移動距離や目的によって使い分けることができ、慣れると素早くカーソルを目的の位置に移動できます。各移動コマンドについて、詳しく解説していきます。

上下左右に移動する

Vimの基本的なカーソル移動は「h」「j」「k」「l」の4つのキーで行います。これらはホームポジションの右手側に配置されているため、効率的に操作できます。

コマンド 方向
h 左に1文字移動
j 下に1行移動
k 上に1行移動
l 右に1文字移動

各キーは単独で使用するだけではなく、数字と組み合わせることによって複数回の移動を一度に実行できます。例えば「5j」と入力すると、下に5行移動します。

行頭・行末に移動する

現在のカーソル位置から行の先頭や末尾に素早く移動するには、専用のコマンドを使用します。これにより、何度も左右のキーを押す必要がなくなります。

コマンド 移動先
0 行の先頭に移動
$ 行の末尾に移動
^ 行の最初の文字に移動
空白文字をスキップして移動

これらのコマンドは、行内での編集作業を行う際に頻繁に使用します。特に「0」と「$」は使用頻度が高いため、早めに覚えておくと便利です。

ファイルの先頭・末尾に移動する

ファイル全体の中で先頭や末尾に一気に移動するには、「gg」と「G」のコマンドを使用します。長いファイルを編集する際に特に有用です。

コマンド 移動先
gg ファイルの先頭行に移動
G ファイルの最終行に移動
数字G 指定した行番号に移動
例: 10Gで10行目に移動

「gg」と「G」は大量の行数があるファイルを編集する際に、スクロールせずに目的の位置へ移動できるため便利です。

Vimで編集・コピー・ペーストをするコマンド

Vimでテキストを編集する際、削除やコピー、ペーストの操作は頻繁に使用します。通常のテキストエディタとは異なるコマンド体系ですが、慣れると素早く正確な編集作業が可能になります。

編集・コピー・ペーストに関する基本的なコマンドとして、以下の4つがあります。

  • 文字を削除する
  • 行を削除する
  • 行をコピーする
  • 貼り付ける

それぞれのコマンドは単独で使用するだけではなく、数字と組み合わせることによって複数回の操作を一度に実行できます。各編集コマンドについて、詳しく解説していきます。

【PR】『Python』を学べる企業・個人向けのプログラミングコース

文字を削除する

カーソル位置の文字を削除するには、「x」コマンドを使用します。このコマンドは1文字単位で削除を行い、通常のテキストエディタのDeleteキーに相当します。

コマンド 動作
x カーソル位置の文字を削除
X カーソルの前の文字を削除
Backspaceキーと同じ動作
dw カーソル位置から次の単語の先頭まで削除
d$ カーソル位置から行末まで削除

「x」の前に数字を付けることによって、指定した文字数を削除できます。例えば「5x」と入力すると、カーソル位置から5文字削除します。

行を削除する

行全体を削除するには、「dd」コマンドを使用します。削除した内容は自動的にクリップボードにコピーされるため、後でペーストすることができます。

コマンド 動作
dd カーソルがある行を削除
2dd カーソルがある行から2行削除
dG カーソル位置から最終行まで削除
dgg カーソル位置から先頭行まで削除

「dd」コマンドは使用頻度が非常に高く、不要な行を素早く削除できます。数字を前に付けることによって、複数行を一度に削除できます。

行をコピーする

行をコピーするには、「yy」コマンドを使用します。Vimではコピーのことをヤンクと呼び、削除と同様にクリップボードに保存されます。

コマンド 動作
yy カーソルがある行をコピー
2yy カーソルがある行から2行コピー
y$ カーソル位置から行末までコピー
yw カーソル位置から単語の末尾までコピー

コピーしたテキストは、ペーストコマンドで貼り付けることができます。複数回ペーストする場合でも、一度コピーした内容は保持されます。

貼り付ける

コピーまたは削除した内容を貼り付けるには、「p」と「P」のコマンドを使用します。カーソル位置の前後で貼り付け位置を選択できます。

コマンド 動作
p カーソルの後に貼り付け
P カーソルの前に貼り付け
3p カーソルの後に3回貼り付け

「p」コマンドは、削除したテキストを別の場所に移動する際にも使用します。削除とペーストを組み合わせることによって、効率的にテキストを並び替えることができます。

Vimで検索・置換をするコマンド

Vimでテキストを編集する際、特定の文字列を検索したり、一括で置換したりする操作は頻繁に行います。検索と置換のコマンドを使いこなすことによって、大量のテキストでも効率的に編集作業を進めることができます。

検索・置換に関する基本的なコマンドとして、以下の3つがあります。

  • 文字列を検索する
  • 検索結果を移動する
  • 文字列を置換する

それぞれのコマンドは、検索条件や置換範囲を指定することによって、柔軟な編集作業が可能です。各コマンドについて、詳しく解説していきます。

文字列を検索する

ファイル内の文字列を検索するには、スラッシュ記号「/」を使用します。コマンドラインモードに入り、検索したい文字列を入力することによって、該当する箇所がハイライト表示されます。

/検索文字列

上記のコマンドでは、指定した文字列をファイル内から前方検索します。検索は大文字と小文字を区別するため、正確に入力する必要があります。

検索結果を移動する

検索を実行した後、複数の検索結果がある場合は「n」と「N」のコマンドで移動できます。これにより、該当箇所を順番に確認できます。

コマンド 動作
n 次の検索結果に移動
N 前の検索結果に移動
* カーソル位置の単語を前方検索
# カーソル位置の単語を後方検索

検索結果の移動コマンドを使用することによって、該当箇所を素早く確認できます。「*」と「#」は単語全体を自動で検索するため便利です。

文字列を置換する

特定の文字列を別の文字列に置換するには、「:s」コマンドを使用します。置換範囲やオプションを指定することによって、柔軟な置換操作が可能です。

コマンド 動作
:s/検索語/置換語/ 現在行の最初に一致した箇所を置換
:s/検索語/置換語/g 現在行のすべての一致箇所を置換
:%s/検索語/置換語/g ファイル全体のすべての一致箇所を一括置換
:%s/検索語/置換語/gc ファイル全体を置換
各箇所で確認してから実行

「:%s」の「%」はファイル全体を指定する記号で、「g」オプションは同じ行内の複数箇所を置換します。「c」オプションを付けると、置換前に確認メッセージが表示されます。

※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。

ITやプログラミングに関するコラム


ITやプログラミングに関するニュース

ブログに戻る

コメントを残す

コメントは公開前に承認される必要があることにご注意ください。

CodeCampが提供するDX人材育成が可能なプログラミングやITが学べる公開講座 - IT・プログラミングを知って学べるコネクトメディア コードキャンプが提供する無料で学べるプログラミングスクール講座 - IT・プログラミングを知って学べるコネクトメディア コードキャンプDX人材育成研修 - IT・プログラミングを知って学べるコネクトメディア 金融業界の業務効率化を加速するニッセイアセットマネジメントの生成AI×GAS活用研修事例 - IT・プログラミングを知って学べるコネクトメディア 【製造業のDX人材育成事例】デジタル人材の即戦力化を実現する、日本ガイシ株式会社の異動者向オンボーディング研修 - ITやプログラミングを知って学べるコネクトメディア フューチャーアーキテクト株式会社が実現した新入社員向けIT研修プログラムでタスクフォース制度が主体的な学びと成長を生み出す - IT・プログラミングを知って学べるコネクトメディア コードキャンプDX人材育成研修 - IT・プログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/【IT新入社員研修】オンラインとオフラインの最適バランスを実現したFutureOneの導入事例 - IT・プログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/【新入社員研修】柔軟なハイブリッド型Java研修で実現した新卒20名の成長と成果|サークレイス株式会社 - ITやプログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/現場により近いところにデジタルを根付かせるDX基礎講座研修|株式会社ブリヂストン - ITやプログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/業務の効率化・DX推進に向けたIT人材育成への第一歩|株式会社カナエ - ITやプログラミングを知って学べるコネクトメディア 企業・法人向けのIT・プログラミング研修 - ITやプログラミングを知って学べるコネクトメディア

新着記事

対象者別で探す

子供(小学生・中学生・高校生)向け
プログラミング教室検索する

子供(小学生・中学生・高校生)がロボットやプログラミング言語を学ぶことができるオフラインからオンラインスクールを検索、比較することが可能です。

子供(小学生・中学生・高校生)
プログラミング教室検索する

ITやプログラムなどの
最新情報を検索する

日々、新しいITやプログラミング言語の情報が流れていきますが、特定の情報を時系列でニュースやコラムを確認することができます。

ITやプログラムなどの
最新情報を検索する