「viって打ったら画面が変になって、終了すらできなくなった。」
Linuxを触り始めた人が必ずぶつかる壁が、テキストエディタの操作です。
Windowsではメモ帳をダブルクリックすれば文字が打てますが、Linuxのターミナルには「マウスで開いて、そのまま入力」という操作がありません。
しかし安心してください。最初に覚えるエディタをnano(ナノ)にすれば、メモ帳に近い感覚でファイルを編集できます。
この記事では、Linux初心者が最初に使うべきエディタとしてnanoの基本操作を解説したうえで、
現場の標準となっているvi(vim)の最低限の操作から覚えておくと便利なコマンドまでを紹介します。
「設定ファイルをちょっと書き換えたい」「シェルスクリプトを作りたい」といった場面で迷わないレベルを目指しましょう。
実行環境: Ubuntu 24.04 LTS(WSL2)で動作確認済み
この記事のポイント
・nanoはCtrl+Oで保存、Ctrl+Xで終了と直感的に操作できる
・viはiキーで入力モード、Escで戻り、:wqで保存終了の3ステップ
・設定ファイルの編集はnanoで始めれば失敗しにくい
・viは現場の標準なので最低限の操作から順番に覚えていこう
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
Linuxで「テキストエディタ」が必要になる場面
Linuxを使い始めると、いろいろな場面で「ファイルの中身を書き換える」必要が出てきます。Windowsならメモ帳やWordを開けばすぐに編集できますが、Linuxのターミナルではテキストエディタというツールを使います。
たとえば、次のような場面です。
・ネットワーク設定を変更したい:IPアドレスやDNSの設定ファイルを書き換える
・Webサーバーの設定を調整したい:ApacheやnginxのVirtualHostの設定ファイルを編集する
・シェルスクリプトを作りたい:自動化のためのスクリプトファイルを新規作成する
・cronの設定を追加したい:定期実行のスケジュールをファイルに書き込む
・Gitのコミットメッセージを書きたい:
git commitを実行すると自動的にviが起動するケースがあるつまり、テキストエディタの操作はLinuxを使ううえで避けて通れない基本スキルです。
Windowsのように「ファイルをダブルクリックして編集」という操作はないので、
コマンドでエディタを起動して、キーボードだけで編集する方法を覚える必要があります。
nano と vi ~ 2つのエディタの違い
Linuxには複数のテキストエディタがありますが、初心者が知っておくべきなのはnano(ナノ)とvi(ヴィーアイ)の2つです。なお、現在多くのLinuxディストリビューションで「vi」と入力すると実際には「vim(Vi IMproved)」が起動します。
vimはviを拡張したエディタで、シンタックスハイライトやundo/redo機能が充実しています。本記事では便宜上「vi」と表記しますが、実際の操作はvimと同じです。
| 比較項目 | nano | vi(vim) |
|---|---|---|
| 操作の難しさ | 簡単(メモ帳に近い) | やや難しい(モード切替が必要) |
| 画面下のガイド表示 | あり(操作キーが常に表示される) | なし(覚えていないと何もできない) |
| 起動コマンド | nano ファイル名 |
vi ファイル名 |
| 保存 | Ctrl+O → Enter | Escキー → :w → Enter |
| 終了 | Ctrl+X | Escキー → :q → Enter |
| 標準インストール | 環境による(未搭載のサーバーも多い) | ほぼ全てのLinuxに搭載 |
| 現場での普及度 | 個人の学習・簡単な編集向き | サーバー現場の事実上の標準 |
結論としては、最初はnanoで操作に慣れて、並行してviの基本だけ覚えておくのがもっとも効率のよい順番です。
「いきなりviから始めなきゃ」と思う必要はありません。
ただし、nanoが入っていない環境でも困らないよう、viの最低限の操作は早めに覚えておきましょう。
nanoの基本操作 ~ ファイルを開いて編集・保存する
nanoは、起動するとすぐに文字を入力できるエディタです。Windowsのメモ帳と同じ感覚で使えるので、初めてのLinuxエディタに最適です。
1. nanoでファイルを開く
ターミナルで次のコマンドを入力します。# nanoで新しいファイルを開く nano test.txt
すでにファイルがある場合は、その中身が表示されます。
2. 文字を入力する
nanoを起動したら、そのままキーボードで文字を入力できます。特別な操作は不要です。カーソルキー(矢印キー)で移動して、BackSpaceで削除、そのまま文字を打ちます。
画面の下に操作ガイドが表示されているのがnanoの特徴です。
GNU nano 7.2 test.txt Hello, Linux! This is my first file. [ New File ] ^G Help ^O Write Out ^W Where Is ^K Cut ^X Exit ^R Read File ^\ Replace ^U Paste
3. ファイルを保存する(Ctrl+O)
編集が終わったら、Ctrl+O(Ctrlキーを押しながらOキー)を押します。画面下にファイル名の確認が表示されるので、そのままEnterキーを押せば保存完了です。
File Name to Write: test.txt # ファイル名を確認してEnterキーを押す
4. nanoを終了する(Ctrl+X)
Ctrl+X(Ctrlキーを押しながらXキー)で終了します。保存していない変更がある場合は「Save modified buffer?」と聞かれるので、Yキーを押してからEnterで保存して終了します。
5. 文字列を検索・置換する(Ctrl+W / Ctrl+\)
長い設定ファイルを編集するとき、目的の行を素早く探したいことがあります。Ctrl+W(Where Is)を押すと画面下に検索窓が現れるので、探したいキーワードを入力してEnterを押します。
# Ctrl+W を押した直後の画面下部 Search: _ # 例: "ServerName" を検索する場合 Search: ServerName # Enterで次の一致箇所へ移動、Ctrl+C でキャンセル
「置換前の文字列」→「置換後の文字列」の順に入力し、1箇所ずつ確認しながら置換できます。
# Ctrl+\ を押した直後 Search (to replace): old-hostname Replace with: new-hostname # Y で1件置換、A で全件一括置換、N でスキップ
6. nanoでよく使うキー操作まとめ
| やりたいこと | キー操作 |
|---|---|
| ファイルを保存する | Ctrl+O → Enter |
| nanoを終了する | Ctrl+X |
| 文字列を検索する | Ctrl+W → 検索語を入力 → Enter |
| 文字列を置換する | Ctrl+\ → 置換前と置換後を入力 |
| カーソル位置の行番号を確認する | Ctrl+C |
| 行を切り取る | Ctrl+K |
| 切り取った行を貼り付ける | Ctrl+U |
| 操作を元に戻す | Alt+U |
viの基本操作 ~ 最低限これだけ覚えれば大丈夫
vi(正確にはvim)は、Linuxのサーバー現場でもっとも広く使われているテキストエディタです。ほぼすべてのLinuxディストリビューションに最初からインストールされているため、
「このサーバーにはnanoが入っていない」という状況でもviなら必ず使えます。
ただし、viには「モード」という概念があり、これが初心者を混乱させる最大の原因です。
まずはモードの仕組みを理解しましょう。
1. viの2つのモードを理解する
viには大きく分けて2つのモードがあります。・コマンドモード:文字の入力はできない。カーソル移動、コピー、削除、保存などの操作を行うモード
・入力モード(インサートモード):普通に文字を入力できるモード
viを起動した直後はコマンドモードです。
そのままキーボードを打っても文字は入力されず、意図しない操作が実行されて画面がおかしくなります。
これが「viを開いたら画面が変になった」という初心者のトラブルの正体です。
2. viでファイルを開く
# viでファイルを開く vi test.txt
3. 入力モードに切り替える(iキー)
iキーを押すと入力モードに切り替わります。画面の左下に「-- INSERT --」と表示されたら、文字を入力できる状態です。
Hello, Linux! This is my first file. ~ ~ -- INSERT --
4. コマンドモードに戻る(Escキー)
入力が終わったら、Escキーを押してコマンドモードに戻ります。「-- INSERT --」の表示が消えたら、コマンドモードに戻った合図です。
迷ったときはとりあえずEscキーを何回か押してください。
何回押しても壊れることはありません。コマンドモードに確実に戻れます。
5. 保存して終了する(:wq)
コマンドモードの状態で、:wq と入力してEnterキーを押します。# 保存して終了 :wq
・:q は「quit(終了)」
・:wq で「保存してから終了」という意味です
保存せずに終了したい場合は :q! と入力します。「!」は「変更を破棄して強制終了」という意味です。
6. 覚えておくと便利なviコマンド
ここまでの基本でファイルの編集はできますが、実務ではもう少し操作を知っておくと作業効率が大きく上がります。現場のエンジニアが頻繁に使うコマンドを厳選して紹介します。
カーソルの移動(コマンドモード)
矢印キーでも移動できますが、長いファイルでは次のコマンドを使うと一気に移動できて便利です。
・gg:ファイルの先頭に移動する
・G:ファイルの末尾に移動する
・:n(nは行番号):指定した行へ移動する(例: :50 で50行目へ)
・w:次の単語の先頭に移動する
・b:前の単語の先頭に移動する
文字列の検索(コマンドモード)
何百行もある設定ファイルで目的のキーワードを探すときに必須の操作です。
# /の後にキーワードを入力してEnterで検索(コマンドモードで実行) /ServerName # n で次の一致箇所、N で前の一致箇所に移動できる
設定ファイルで似たような行を複製したいときに使います。
・yy:カーソルのある行をヤンク(コピー)する
・p:ヤンクした行をカーソルの次の行に貼り付ける
・dd:カーソルのある行を削除する(切り取り)
・u:直前の操作を元に戻す(undo)
実務ではApacheやnginxのバーチャルホスト設定をコピーして別ドメイン向けに書き換えるとき、
このyy + pの組み合わせが非常に役立ちます。
7. viの最低限のコマンドまとめ
| やりたいこと | 操作 |
|---|---|
| ファイルを開く | vi ファイル名 |
| 文字を入力する | iキーで入力モードに切り替えてから入力 |
| 入力をやめる | Escキーでコマンドモードに戻る |
| 保存して終了する | Escキー → :wq → Enter |
| 保存せずに終了する | Escキー → :q! → Enter |
| ファイルの末尾に移動する | コマンドモードで G |
| 1行削除する | コマンドモードで dd |
| 1行コピーする | コマンドモードで yy |
| 貼り付ける | コマンドモードで p |
| 文字列を検索する | コマンドモードで /キーワード → Enter |
| 操作を元に戻す | コマンドモードで u |
実践 ~ 設定ファイルを編集してみよう
ここまでの操作を使って、実際にLinuxの設定ファイルを編集する練習をしてみましょう。自分のホームディレクトリにある .bashrc というファイルにコメントを1行追加します。
1. nanoで.bashrcを開く
# .bashrcをnanoで開く nano ~/.bashrc
2. ファイルの末尾にコメントを追加する
カーソルキーでファイルの一番下まで移動し、次の1行を追加します。# My first edit on Linux - 2026-04-16
3. 保存して終了する
Ctrl+O → Enter で保存し、Ctrl+X で終了します。4. 編集結果を確認する
catコマンドでファイルの末尾を確認しましょう。# ファイルの末尾5行を表示 tail -5 ~/.bashrc
$ tail -5 ~/.bashrc fi # enable programmable completion features # ...省略... # My first edit on Linux - 2026-04-16
5. viで同じ作業をやってみる
nanoで操作に慣れてきたら、同じ作業をviで試してみましょう。viに慣れるための実践練習として最適です。# viで.bashrcを開く vi ~/.bashrc # 1. ファイルが開いたらGキーを押してファイルの末尾に移動する # 2. oキーを押す(カーソルの次の行に新しい行を追加して入力モードへ) # 3. コメントを入力する # My second edit - using vi # 4. Escキーを押してコマンドモードに戻る # 5. :wq と入力してEnterキーを押す
ファイルの末尾に追記するときに便利なコマンドです。
「開く → 編集する → 保存して閉じる → 確認する」という流れは、nanoもviも同じです。
エディタ操作でよくあるトラブルと対処法
「viで文字が打てない」
viを起動した直後はコマンドモードです。iキーを押して入力モードに切り替えてください。画面左下に「-- INSERT --」と表示されていれば入力できる状態です。
「viを終了できない」
まずEscキーを押してコマンドモードに戻ります。その後 :q! と入力してEnterキーを押せば、変更を破棄して強制終了できます。
保存してから終了したい場合は :wq と入力してEnterキーです。
「viでreadonlyと表示されて保存できない」
/etc/ 配下などのシステム設定ファイルをsudoなしで開くと、読み取り専用(readonly)として開いてしまいます。注意:このまま編集しようとしても保存時に「E45: 'readonly' option is set」というエラーが表示されます。
一旦 :q! でviを終了し、sudoを付けて開き直すのが確実です。
# readonly エラーが出た場合: 一旦終了して sudo を付けて開き直す :q! sudo vi /etc/hosts
「nanoで日本語が入力できない」
ターミナルの文字コード設定がUTF-8になっているか確認してください。WSL2のUbuntuでは通常UTF-8が標準なので問題ありませんが、古い環境ではロケール設定が必要な場合があります。
# 現在のロケール設定を確認する locale
$ locale LANG=ja_JP.UTF-8 LC_CTYPE="ja_JP.UTF-8" LC_NUMERIC="ja_JP.UTF-8" # ...省略...
「Permission denied で編集できない」
システムの設定ファイル(/etc/ 配下など)を編集するには管理者権限が必要です。コマンドの先頭に sudo を付けて実行してください。
# 管理者権限でファイルを編集する sudo nano /etc/hosts
本記事のまとめ
| やりたいこと | nano | vi |
|---|---|---|
| ファイルを開く | nano ファイル名 |
vi ファイル名 |
| 文字を入力する | そのまま入力 | iキー → 入力 |
| 保存する | Ctrl+O → Enter | Esc → :w → Enter |
| 終了する | Ctrl+X | Esc → :q → Enter |
| 保存して終了する | Ctrl+O → Ctrl+X | Esc → :wq → Enter |
| 変更を捨てて終了する | Ctrl+X → Nキー | Esc → :q! → Enter |
| 文字列を検索する | Ctrl+W | コマンドモードで /キーワード |
最初はnanoでファイル編集に慣れて、少しずつviの操作を覚えていくのがおすすめです。
どちらのエディタも「開く → 編集する → 保存して閉じる」という流れは同じです。
テキストエディタの操作は、Linuxのコマンド操作と同じくらい重要な基本スキルです。
まずは自分のファイルをnanoで開いて、1行追加して保存する練習から始めてみてください。
viに慣れてきたら「vimtutor」コマンドを実行してみることをおすすめします。
対話形式でvimの操作を練習できる公式チュートリアルで、30分ほどで基本を習得できます。
無料の「Linuxサーバー構築入門マニュアル(図解60ページ)」をプレゼントしています。
コマンドを「なんとなく打つ」段階から卒業したい方は、ぜひ受け取ってみてください。
無料マニュアルを受け取る >>
次のステップ ~ 関連記事で実践力を高める
テキストエディタの基本操作を覚えたら、次は実際のコマンド操作やサーバー管理の基礎を学んでいきましょう。以下の記事で、Linux実務に必要なスキルを段階的に身につけられます。
・systemctlコマンドの使い方|サービスの起動・停止・自動起動設定
・scpコマンドでファイルを安全に転送する方法|公開鍵認証やディレクトリごとコピーも
・sudoコマンドでroot権限を安全に実行する方法|visudoの設定からログ確認まで
・ssコマンドでソケット情報を確認する方法|LISTEN・ESTABの見方やポート確認も
・Linuxログの調査をする方法|/var/log/の読み方からgrep・journalctlの検索テクニックまで
・ipコマンドでネットワーク設定を確認・変更する方法|ifconfigとの違いやアドレス追加も
・awkコマンドでテキストを加工する方法|列の抽出・集計やログ解析の実践例も
3,100名以上が実践した「型」を無料で公開中
プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。
登録10秒/合わなければ解除3秒 / 詳細はこちら
- 次のページへ:Linuxのユーザーとグループ入門|rootと一般ユーザーの違いを初心者向けに解説
- 前のページへ:WSL2の日常的な使い方|インストール後に知っておきたい実践活用術
- この記事の属するカテゴリ:【Linux入門】初心者のための基礎知識・講座へ戻る

無料メルマガで学習を続ける
Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。
登録無料・いつでも解除できます