概要
viは、テキストファイルを効率的に編集するためのツールであり、特にサーバー環境でGUIなしで作業する場合に便利です。学習曲線はありますが、習熟すれば非常に高速な編集が可能です。
主な特徴
- モードベース編集(コマンドモード、挿入モード、ラインモードなど)
- 強力な検索および置換機能
- マクロおよびスクリプトサポート
- システムリソースの効率的な使用
主なオプション
viコマンド実行時に使用できる主なオプションです。
ファイルの開き方とモード
生成されたコマンド:
コマンドを組み合わせてみてください。
説明:
`vi` コマンドを実行します。
これらのオプションを組み合わせて、AIと一緒に仮想的にコマンドを実行してみてください。
使用例
viエディタを使用する基本的な例です。viはモードベースであるため、コマンドモードから挿入モードに切り替え(i、a、oなど)、編集後にコマンドモードに戻って(:)保存および終了します。
新規ファイル作成または既存ファイルを開く
vi new_file.txt
指定された名前のファイルを開くか、ファイルが存在しない場合は新規作成します。
読み取り専用モードでファイルを開く
vi -R important_config.conf
ファイル内容を変更できない読み取り専用モードでファイルを開きます。
ファイルを開いて特定の行に移動
vi +50 script.sh
ファイルを開きながらカーソルを50行目に移動します。
ファイルを保存して終了
vi my_document.txt
# (内容編集後)
# ESCキーを押した後
:wq
ファイルを編集した後、コマンドモードで `:wq` と入力して保存し終了します。
保存せずに終了
vi temp_file.log
# (内容編集後)
# ESCキーを押した後
:q!
ファイル内容を変更しても、保存せずに強制終了します。
ヒントと注意点
viは強力ですが、モードベースの特性のため、初心者にはやや難しく感じられることがあります。次のヒントを活用してviの使用に慣れてください。
viの核心:モードの理解
viは主に2つのモードで動作します。
- コマンドモード (Command Mode): viを実行すると、デフォルトでこのモードになります。ファイル移動、テキストの削除/コピー/貼り付け、コマンド実行など、編集コマンドを実行します。キー入力が直接コマンドとして認識されます。
- 挿入モード (Insert Mode): テキストを直接入力するモードです。コマンドモードから 'i' (insert)、'a' (append)、'o' (open line)などを押して入ります。'ESC'キーを押してコマンドモードに戻ります。
よく使う基本コマンド(コマンドモードで)
- i: 現在のカーソル位置から挿入モードに切り替え
- a: 現在のカーソルの次の位置から挿入モードに切り替え
- o: 現在の行の下に新しい行を追加し、挿入モードに切り替え
- dd: 現在の行を削除
- yy: 現在の行をコピー
- p: コピー/削除した内容を貼り付け
- /: テキスト検索(例: `/search_term`)
- :w: ファイルを保存
- :q: 終了(変更がある場合は警告)
- :wq: 保存して終了
- :q!: 保存せずに強制終了
vi学習のためのヒント
ほとんどのLinuxシステムには `vimtutor` というvi/vimチュートリアルが含まれています。ターミナルで `vimtutor` を実行すると、対話形式でviの基本的な使い方を学ぶことができます。これはviに慣れるための最も良い方法の一つです。