103.8基礎
viで誤った編集を行い、未保存の変更がある。
その変更を保存せず、強制的にviを終了する。
適切なexコマンドはどれか。
× 不正解
:q!は未保存変更の確認を強制的に越えて終了する。編集内容はファイルへ書き込まれない。
詳細解説
誤り
:w!書き込みを強制する方向で、変更を破棄しない。
保存を強制し、終了しない。
誤り
:wq!書き込みと終了を強制し、変更を保存する。
変更を保存してから終了する。
誤り
:qa全ウィンドウ終了を試みるが、未保存変更があると通常は拒否される。
未保存変更があると通常は終了を拒否される。
正しい
:q!未保存変更を破棄して現在のエディタを強制終了する。
正解。ファイルへ書かず変更を破棄する。
実際に確かめる
一時的な検証環境で実行できる例です。
printf 'keep\n' > sample.txt; vim -Nu NONE -n -es sample.txt -c 'normal! dd' -c 'q!'; cat sample.txt期待される結果
keep理解のポイント
- :q!は破棄して終了
- !は強制指定
- :wq!は保存する
確認時の注意
- 確認環境: Vim 9.x(vi互換exコマンド)
基礎のおさらい
破棄の意味
:q!で破棄した編集内容は通常のundoでは取り戻せない。
確認
保存が必要か不明な場合は、強制終了前に差分やファイル名を確認する。
問題IDKP-103-126
確認環境Vim 9.x(vi互換exコマンド)
最終技術確認2026-08-12
誤り・権利侵害を報告