viエディタの基本的な編集操作

1.切り取り・コピー・貼り付け

vi エディタでは、主にコマンドモードでの操作によって切り取り(削除)、コピー、貼り付けが行われます。

  • 切り取り(削除): x または dd コマンドを使用します。
  • コピーyy コマンドを使用してコピーします。
  • 貼り付けp コマンドを使用してカーソル位置に貼り付けます。

2.viエディタの主な編集コマンド

コマンド説明
xカーソル位置の文字を削除
dd現在の行を削除
yy現在の行をコピー
pカーソル位置にコピーした内容を貼り付ける。
u直前の操作を取り消す。
Ctrl + r取り消した操作をやり直す。
主な編集コマンド

3. 編集の操作の例

3.1 コマンドモードと挿入モード

 コマンドモードから、挿入モードに切り替えるには、「 i 」キーなどで切り替えます。また、挿入モードからコマンドモードに切り替えるには「Esc」キーを押します。

3.2 切り取り(削除)と貼り付け

以下のコマンドで ‘file1.txt’ を作成しておきます。

$ date > file1.txt
$ date >> file1.txt
$ vi file1.txt

2024年  1月 20日 曜日 22:12:28 JST ←カーソルを削除したい文字の上に移動
2024年  1月 20日 土曜日 22:14:02 JST

2024年  1月 20日 曜日 22:12:28 JST ←x を入力して文字を削除
2024年  1月 20日 土曜日 22:14:02 JST
2024年  1月 20日 曜日 22:12:28 JST
2024年  1月 20日 曜日 22:14:02 JST ←コピー先にカーソルを移動
2024年  1月 20日 曜日 22:12:28 JST
2024年  1月 20日 土曜日 22:14:02 JST ←p を入力して削除した文字を貼り付け

「:wq」と入力して保存して終了します。

3.3 行のコピーと貼り付け

以下のコマンドで ‘file2.txt’ を作成しておきます。

$ date > file2.txt
$ date >> file2.txt
$ vi file2.txt

2024年  1月 20日 土曜日 23:15:31 JST ←カーソルをコピーしたい行の先頭に移動
2024年  1月 20日 土曜日 23:15:36 JST

2024年  1月 20日 土曜日 23:15:31 JST ←yy を入力して行をコピー
2024年  1月 20日 土曜日 23:15:36 JST

2024年  1月 20日 土曜日 23:15:31 JST 
2024年  1月 20日 土曜日 23:15:36 JST ←コピー先にカーソルを移動

2024年  1月 20日 土曜日 23:15:31 JST
2024年  1月 20日 土曜日 23:15:36 JST ←p を入力してコピーした行を貼り付け

2024年  1月 20日 土曜日 23:15:31 JST ←コピーした内容が貼り付けられます
2024年  1月 20日 土曜日 23:15:36 JST
2024年  1月 20日 土曜日 23:15:31 JST

4.コマンドの繰り返しと取り消し

  • コマンドの繰り返し
     「.」(ピリオド)を使用して直前のコマンドを繰り返します。例えば、「dd」を実行して1行削除し、次に「.」 を入力すると、さらに1行削除されます。
  • 取り消し
     「u」 コマンドを使用して直前の操作を取り消すことができます。複数の取り消しは「u」 を連続して入力するか、「:u」 で取り消しの履歴を表示し、取り消したいステップまで戻ることができます。

 これらの編集コマンドは、vi エディタの強力な機能であり、熟練することで非常に迅速かつ効率的なテキスト編集が可能です。