类似UltraEdit中列编辑(Alt+C),称为列模式。
VIM 中列模式使用
1. 进入列模式: Linux 下vim Ctrl+V, window下面Gvim Ctrl+Q (Ctrl+V映射了粘帖)。
2. 选择区域块: 移动操作可以用于选择。
3. 列操作: 删除 d(x等删除操作), 替换c, 插入 Shift+i (I)。
4. 操作作用列:按两次ESE
示例
将数列:
10.1.5.214
10.1.5.212
10.1.5.210
编辑成序列:第一步:中间列修改IP地址第二段“1” 为“5”:ping -c 4 10.5.5.212 >> result0 ping -c 4 10.5.5.210 >> result0 ping -c 4 10.5.5.214 >> result0
将游标定位第一个行 IP 地址第二段的“1”
Ctrl-v
进入纵向编辑模式
G
移动游标到最后一行,使可视块覆盖所要修改的列(可能需要右移动,G移动会向左覆盖到第一列)
r
进入修改模式
5
输入数字“5”
ESC
退出纵向编辑模式,同时所有被选中的数字都被改成了“5”,并回到命令模式
结果如下:
10.5.5.214
10.5.5.212
10.5.5.210
第二步:首行插入"ping -c 4"
将游标定位到第一行第一列
Ctrl-v
进入纵向编辑模式
G
移动游标到最后一行第一列,可视块覆盖了第一列
I
进入行首插入模式
ping -c 4
输入所要求字符“ping – c 4 ”
ESC
退出纵向编辑模式的同时所有选中的字符前都添加了“ping – c 4 ”,回到命令模式
结果如下:
ping -c 4 10.5.5.214
ping -c 4 10.5.5.212
ping -c 4 10.5.5.210
第三步 : 尾追加 “>> result0"
将游标定位到第一行最后一列
Ctrl-v
进入纵向编辑模式
G
移动游标到最后一行最后一列,可视块覆盖了最后一列($-->G-->$)
A
进入行尾插入模式
>> result
输入所要求字符“>> result0”
ESC
退出纵向编辑模式的同时所有选中的字符后都添加了“ >> result0”,回到命令模式
结果如下:
ping -c 4 10.5.5.214 >> result0
ping -c 4 10.5.5.212 >> result0
ping -c 4 10.5.5.210 >> result0
以上三个步骤有一个共同特点,就是都纵向为编辑方向。以上由三行代码为例的方法同样也可以适用于更多的行。
参考文献:
http://www.ibm.com/developerworks/cn/linux/l-cn-vimcolumn/