本記事の構成および論理分析にはAI(人工知能)を使用しています。情報の正確性は、システム管理者(UNIXユーザー)による手動検証済みです。
第6回 vi 入門 | 削除コマンド(x, dw, dd)の基本と使い分け|UNIX Cafe

vi 入門 | 第6回
編集が自然と速くなる「vi 削除コマンド」の基本
vi の削除は、ただ文字を消すだけではありません。何をどの単位で消したいのかに合わせて、短い操作を使い分けられるのが特徴です。
今回のゴールは、x dw dd の3つを使い分けて、文字・単語・行の削除を自然に行えるようになることです。どれも難しくありません。実例を見ながら、順番に試してみましょう。
動画で流れを先に見たい方は、UNIX Cafe の YouTube もあわせてどうぞ。記事と同じく、初心者向けのやさしい流れで vi の操作を確認できます。
📝 この記事で学べること
xでカーソル位置の1文字を削除する方法dwで単語ひとつをまとめて削除する方法ddで行をまるごと削除する方法- 削除ミスを
uで取り消す方法 - 場面に応じた3つのコマンドの使い分け
vi の削除は「単位」で考える
多くのエディタでは、Delete キーや Backspace キーで1文字ずつ消していきます。vi でも1文字削除はできますが、それだけではありません。「文字」「単語」「行」という単位を使い分けることで、余分な手数を大幅に減らせます。
最初に覚えたい単位は次の3つです。どの場面でどれを使うかが分かると、削除の操作が一気に楽になります。
- 1文字だけ消したい →
x - 単語ひとつを消したい →
dw - 行をまるごと消したい →
dd
x で1文字削除する
x は、カーソル位置の1文字をその場で削除するコマンドです。Delete キーに近いイメージで、入力モードへの切り替えなしにコマンドモードのままで使えます。
x : カーソル位置の1文字を削除するたとえば、「applee」と打ち間違えた場合、余分な「e」の上にカーソルを移動して x を1回押すだけで修正が完了します。
Before(カーソルが末尾の「e」の上)
applee orange bananaAfter(x を1回押した)
apple orange bananaまた、3x のように数字を前に付けると、カーソル位置から3文字まとめて削除できます。同じキーを何度も押す手間を省けます。
💡 X(大文字)でカーソルの左側を削除できます
x(小文字)がカーソル位置の文字を消すのに対し、X(大文字)はカーソルの1つ左の文字を削除します。Backspace に近い動きです。
dw で単語ひとつを削除する
dw は、カーソル位置から次の単語の手前までを削除するコマンドです。d(delete)と w(word)を組み合わせた操作で、単語ひとつをまるごと消したいときに便利です。
dw : カーソル位置から単語の末尾(次の単語の直前)まで削除するたとえば、「orange」という不要な単語を消したい場合、カーソルを「o」の上に移動して dw を押します。
Before(カーソルが「o」の上)
apple orange bananaAfter(dw を1回押した)
apple bananax で1文字ずつ消すより、はるかに少ない手数で単語を削除できます。変数名を丸ごと消して書き直したいときや、設定ファイルの不要なオプションを削除したいときに特に効果的です。
⚠ 注意:dw は単語の先頭から使うのが基本です
カーソルが単語の途中にある状態で dw を押すと、カーソル位置から次の単語の直前までが削除されます。意図した範囲と異なる場合があるので、単語の先頭(w や b で移動した位置)から使うと安心です。
dd で行をまるごと削除する
dd は、カーソルがある行を1行まるごと削除するコマンドです。行の内容に関係なく、その行全体が消えます。
dd : カーソルがある行を1行まるごと削除する不要な設定行を消したいときや、書き直したい行をまとめて削除したいときに向いています。
Before(2行目にカーソルがある)
apple
orange
bananaAfter(dd を1回押した)
apple
banana3dd のように数字を前に付けると、カーソル行から3行まとめて削除できます。複数行を一気に消したいときに便利です。
💡 dd で削除した行は p で貼り付けられます
dd で消した行は、バッファ(一時保存領域)に残ります。p を押すとカーソル行の下に貼り付けられるので、「行を移動する」操作としても使えます。
削除してしまったときは u で取り消せる
削除コマンドを使い始めたころは、「消しすぎた」「間違えた」という場面が必ず来ます。そんなときは u(undo)を押してください。直前の操作を取り消して、元の状態に戻せます。
u : 直前の操作を取り消す(アンドゥ)
Ctrl + r : 取り消した操作をやり直す(リドゥ)u は何度でも押せます。「消しすぎた」と気づいたときに慌てず押せるよう、セットで覚えておきましょう。取り消しすぎた場合は Ctrl + r でやり直せます。
3つのコマンドの使い分け
迷ったときは「消したい範囲の大きさ」で選ぶと整理しやすくなります。
| コマンド | 削除する範囲 | よく使う場面 |
|---|---|---|
| x | カーソル位置の1文字 | 1文字の打ち間違いを直したい |
| dw | カーソル位置から単語末尾まで | 不要な単語をまとめて消したい |
| dd | カーソル行を1行まるごと | 行ごと消して書き直したい |
まとめ|削除は大きさで選ぶと整理しやすい
✔ この記事のまとめ
xはカーソル位置の1文字を削除する。入力モード不要dwはカーソル位置から単語の末尾までを削除する。単語の先頭から使うのが基本ddはカーソル行を1行まるごと削除する。pで貼り付けも可能- 「回数 + コマンド」(例:
3dd)で繰り返し削除できる - 削除を間違えたときは
uでいつでも取り消せる
vi の削除は、慣れるほど「消したい範囲に合ったコマンドを迷わず選べる」ようになります。まずは x と dd だけでも試してみましょう。間違えても u で戻れるので、気軽に操作してみてください。
次回予告
次は、「vi コピー&貼り付け」の基本を見ていきます。削除に慣れてくると、行をまとめて扱う感覚もつかみやすくなります。
あわせて読みたい
まずは戻せる安心感を固めたい方は、「vi undo・redo」の使い方もあわせてどうぞ。









