vim基本操作
一、复制命令:
复制的命令是y,即yank(提起) ,常用的命令如下:
y 在使用v模式选定了某一块的时候,复制选定块到缓冲区用;
yy 复制整行(nyy或者yny ,复制n行,n为数字);
y^ 复制当前到行头的内容;
y$ 复制当前到行尾的内容;
yw 复制一个word (nyw或者ynw,复制n个word,n为数字);
yG 复制至档尾(nyG或者ynG,复制到第n行,例如1yG或者y1G,复制到档尾)
二、粘贴命令:
粘贴的命令式p,即put(放下)
p 小写p代表贴至游标后(下),因为游标是在具体字符的位置上,所以实际是在该字符的后面
P 大写P代表贴至游标前(上)
整行的复制粘贴在游标的上(下)一行,非整行的复制则是粘贴在游标的前(后)
三、剪切命令
剪切的命令是d,即delete,d与y命令基本类似,所以两个命令用法一样,包括含有数字的用法.
d 剪切选定块到缓冲区;
dd 剪切整行
d^ 剪切至行首
d$ 剪切至行尾
dw 剪切一个word
dG 剪切至档尾
任务1:复制多行,然后粘贴。
1. 选定文本块: 将光标移动到要复制的文本开始的地方,按v进入可视模式(或使用v进入可视模式,移动光标键选定内容);将光标移动到要复制的文本的结束的地方。
2. 按y复制。此时vim会自动将光标定位到选中文本的开始的地方,并退出可视模式。
3. 移动光标到文本结束的地方,按p粘贴。
四、保存命令
按ESC键 跳到命令模式,然后:
:w 保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w! 强制保存,不推出vi
:wq 保存文件并退出vi
:wq! 强制保存文件,并退出vi
q: 不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑
vim进阶操作
一、多行删除
dd 删除一行
ndd 删除以当前行开始的n行
dw 删除以当前字符开始的一个字符
ndw 删除以当前字符开始的n个字符
d$、D 删除以当前字符开始的一行字符
d) 删除到下一句的开始
d} 删除到下一段的开始
d回车 删除2行
二、多行复制
任务2:将第9行至第15行的数据,复制到第16行
方法1:(强烈推荐)
:9,15 copy 16 或 :9,15 co 16
由此可有:
:9,15 move 16 或 :9,15 m 16 将第9行到第15行的文本内容到第16行的后面
方法2:
光标移动到结束行,ma
光标移动到起始行,输入y'a
光标移动到需要复制的行,输入p,行前复制则输入大写P
方法3:
把光标移到第9行 shift + v
再把光标移动到第15行 ctrl + c
再把光标死去到第16行 p mysql
方法4:
光标移动到起始行,输入ma
光标移动到结束行,输入mb
光标移动到粘贴行,输入mc
然后输入:'a,'b, co 'c 把co换成m就是剪切
若要删除多行,则输入:'a,'b de
三、其他进阶操作
vi设置自动缩进:set smartindent
vi设置显示行号:set number 或 set nu
Vim中如何全选并复制
全部删除:按esc后,然后dG
全部复制:按esc后,然后ggyG
全选高亮显示:按esc后,然后ggvG或者ggVG