用特定字符串替换vi文本文件中的备用行

时间:2012-05-21 06:42:52

标签: vi

我有5列的文本文件,如果我想用特定的字符串替换第二列中的每个替代行,怎么能在vi文本编辑器中执行此操作?

eg: 1 CG 54 76 76
    2 CG 45  78 78
    3 CG 48  76 89
    4 CG 49  50 52

如果我想用CA替换第2行和第4行(第2列)我怎样才能在vi文本编辑器中执行此操作?

1 个答案:

答案 0 :(得分:1)

如果你正在使用vim,这是一个简单的宏。如果您不确定是否使用vim,则在命令模式下键入 qq 并检查您是否在底部的状态行中看到录制。如果是这样,那么你可以使用这个宏。

从第1行开始,使用以下代码录制宏:qqj0wcwCA[Esc]jq

这将编辑第二行并让您离开第3行,现在您将宏注册到q。输入 100 @ q 以在寄存器q中执行100次命令。

命令详情:

  • 从第1行开始
  • qq - 这开始录制一个宏,您会在底部的状态行中看到录制
  • j - 移至下一个(备用)行。
  • 0 - 移至该行的开头。
  • w - 跳转到下一个单词(第2列)
  • cwCA - 将此字词更改为 CA
  • Esc键 - 退出编辑模式。
  • j - 转到下一行。
  • q - 停止录制宏。