保存と終了
保存と終了
viでファイルを保存・終了する方法を学びます。
基本的な保存と終了
すべてコマンドラインモード(:から始まる)で実行します。
| コマンド | 動作 |
|---|---|
:w |
保存(上書き) |
:q |
終了 |
:wq |
保存して終了 |
:q! |
保存せず強制終了 |
:wq! |
強制的に保存して終了 |
使い分け
1. 編集して保存したい場合
:wq
または
:x
2. 編集内容を破棄したい場合
:q!
3. 途中で保存だけしたい場合
:w
編集を続けられます。
4. 別名で保存したい場合
:w newfile.txt
元のファイルは残ります。
よくあるエラーと対処法
「E37: No write since last change」
意味: 変更が保存されていません
対処:
- 保存する:
:wq - 破棄する:
:q!
「E45: 'readonly' option is set」
意味: 読み取り専用ファイルです
対処:
- 強制保存:
:wq! - 破棄:
:q!
「E212: Can't open file for writing」
意味: 書き込み権限がありません
対処:
# viを終了して、sudoで開き直す
sudo vi ファイル名
⚠️ よくある間違い
- 挿入モードのまま
:wqを入力 → 文字として入力されてしまう - 解決策: まず
Escを押してノーマルモードに戻る
緊急時の脱出方法
viから抜け出せなくなったら、以下を順番に試してください:
1. Escを数回押す(ノーマルモードに戻る)
2. :q! を入力してEnter(強制終了)
それでもダメなら:
Ctrl + z (一時停止)
→ ターミナルに戻る
→ 別のコマンドを実行可能
再開したい場合:
fg
ショートカット
| キー | 動作 |
|---|---|
ZZ |
保存して終了(:wqと同じ) |
ZQ |
保存せず終了(:q!と同じ) |
💡 おすすめ
最初は
最初は
:wqと:q!だけ覚えれば十分です。慣れてきたらZZなどのショートカットを使いましょう。
実践チェックリスト
-
:wqで保存して終了できる -
:q!で保存せず終了できる -
:wで途中保存できる -
Esc→:q!で緊急脱出できる