vi の使い方 (12)

複数のファイルにまたがったコピー

バッファ 複数のファイル の扱い方の2つの知識を組み合わせると2つ以上のファイルにまたがった コピーができるようになる。
1つのファイルの中でコピーをするにはyコマンドとpコマンドの 組合せでできたが、他のファイルにコピーをするにはそれだけではできない。 なぜなら、yコマンドをそれだけで使うとヤンクされたデータは名前無しバッファに コピーされる。 ところが名前無しバッファは他のファイルに編集対象を変更したとたんに クリアされて中身が消えてしまう。 だからpコマンドを使っても何もコピーされない。
ゆえに他のファイルにデータをコピーするためには、編集対象を変更しても 中身の消えない名前付きバッファを使う。

ファイルtmp1からtmp2に、ある1行をコピーする方法。

# vi tmp1
  1. 最初にtmp1が現れる。
  2. コピーされる行で"ayyと打ち込む。
    これでaバッファにその行がコピー(ヤンク)される。
  3. :e tmp2でtmp2に移る。
  4. コピーしたい行で"apと打ち込む。
    これでaバッファの内容がカーソルの下にコピーされる。

参考


Prev | Next
Home | Contents
abe@injapan.net