viの使い方

viの使い方は、「コマンドモード」と「入力モード」という2つのモードを切り替えて操作する。
テキストを入力するには入力モードに切り替え、ファイル保存などの操作をするにはコマンドモードに戻る。 

1. viの起動と基本モード

viを起動する 

ターミナルでviコマンドに続けてファイル名を入力。ファイルが存在しない場合は新規作成される。 

vi ファイル名

viの2つのモード

  • コマンドモード: viを起動した直後の状態で、カーソル移動やファイルの保存・終了のコマンドを実行。
  • 入力モード  :キーボードで入力した文字がそのままファイルに書き込まれる。 

2. 主要な操作コマンド

入力モードへの切り替え(コマンドモードから) 

  • i: カーソルがある位置の直前から入力を開始。
  • a: カーソルがある位置の直後から入力を開始。
  • o: カーソルがある行の次の行に新しい行を追加して入力を開始。 

コマンドモードへの切り替え(入力モードから)

  • Escキー: 入力モードを終了し、コマンドモードに戻る。 

カーソル移動(コマンドモードで)

  • h: 左へ移動
  • j: 下へ移動
  • k: 上へ移動
  • l: 右へ移動 

編集操作(コマンドモードで) 

  • x: カーソル位置の1文字を削除。
  • dd: カーソルがある行を削除。
  • dw: カーソル位置から単語の終わりまでを削除。
  • u: 直前の操作を取り消し。
  • yy: カーソルがある行をコピー。
  • p: コピーまたは削除した行をカーソルのに貼り付ける。
  • P: コピーまたは削除した行をカーソルのに貼り付ける。 

ファイルの保存と終了(コマンドモードで)

コマンドモードの状態で:(コロン)を押すと、画面下部にコマンド入力待ちの状態になる。 

  • :w: 変更を保存。
  • :q: viを終了。
  • :wq: 変更を保存して終了。
  • :q!: 変更を破棄して強制終了。
  • ZZ: 変更を保存して終了(Shift + zを2回押す)。 

3. 操作のヒント

  • モードの確認: 今どちらのモードにいるか分からなくなった場合は、ひとまずEscキーを何度か押す。
    これで確実にコマンドモードに戻ることができます。
  • 繰り返し操作: 削除やコピーなどのコマンドの前に数字を入力すると、指定した回数だけ繰り返すことができる。
    • 例: 3ddで3行削除
  • vivim: 最近のLinuxディストリビューションでは、viコマンドがvim(vi IMproved)へのエイリアスになっていることが多く、より高機能になっている。ただし、基本的な操作は同じ。