强大的文本编辑器vi
多模式文本编辑器
四种模式
一、正常模式(Normal-mode)
输入vim 进入vim编辑器正常模式,或者是输入vim+空格+(要编辑的)文件 在正常模式下查看该文件
二、插入模式(Insert-mode)
输入小写的 i 进入插入模式,可以在文本上输入任何想要的字符。
按esc键回到正常模式,大写的i(shift+i键)进入插入模式,同时光标会来到这一行的开头。
小写的a光标会来到当前光标所在位置的下一位进入到插入模式,大写的A光标会来到当前光标所在位置的末尾进入到插入模式。
光标插入行:小写的o光标会来到当前光标所在位置的下一行进入到插入模式,大写的O光标会来到当前光标所在位置的上一行进入到插入模式。
保存退出:冒号+q键+回车键 ,如:q 回车
光标移动键:HJKL,H光标向左移动,L光标向右移动,J键向下,K键向上
复制命令:
1)复制整行:yy命令,将光标移动到要复制的行,按两次y键盘,在移动到要黏贴的行 输入p命令,粘贴到对应位置,多次复制,多次按p命令就可以了
2)复制多行:行数+yy,如,要复制3行,就将光标定位到第一行 输入3yy,移动到对应的位置 按p键,就将复制的3行粘贴到了对应的位置
3)复制从光标位置到这一行的结尾:y\(, 如,将光标移动到对应的位置,输入y\),再将光标移动到要粘贴的位置,按p键 粘贴成功。
剪切命令:
1)剪切整行:dd命令,
2)剪切多行:行数+dd,
3)剪切从光标到结尾:d$,
撤销命令:按u键,多次撤销,多次按u键。
重做命令:把撤销的命令重做一遍:ctrl+r,之前撤销的命令 就会再重新操作一遍。

单个字符的删除命令:x命令,如果要删除某字符,就将光标移动到该字符,按x键就会删除该字符。
单个字符替换命令:r命令,如果要替换某字符,将光标移动到该字符,按r键,然后输入新的字符,原字符就会被替换掉。
光标移动到指定行:行号(数字)+大写的G命令,
如,光标移动到第11行:按11shift+g(大写G),这样光标就移动到11行。
显示文本行号:冒号+set+nu"命令, 如":set nu" 的方式显示光标所在行的行号。
光标移动到第一行:按小写的g,
光标移动最后一行:按shift+g(大写G)
光标移动到第一个字符:^命令
光标移动到最后一个字符:$命令

三、命令模式(Command-mode)
回到正常模式:esc键
保存命令:冒号+w+要保存的目录,
如,将当前文件保存到/root目录下的a文件,输入 # :w /root/a.txt
如果我们打开文件是通过vim+空格+文件名的话,我们可以直接按":w"保存到原始的文件当中;
保存退出vi编辑器: 冒号+q 命令
不保存退出vi编辑器:冒号+q+! 命令
在打开文件的同时去执行Linux命令:冒号(:)+叹号(!)+Linux命令,如查看ip,输入":!ifconfig"
文本字符的查找和替换命令
查找命令:/ + 要查找的字符,如,查找x字符,在正常模式下直接输入"/x",
如果查找到多个x字符,光标自动停留在第一个x字符处,可以按n键,向下移动到下一个x字符,想上移动到上一个字符,可以按shift+n键。
替换命令:冒号+s/原字符/新字符,如将字符o替换为x的命令为:"????/o/x"
批量替换命令:冒号+%s/原字符/新字符/g,如,将小写字符o替换为大写字符O的命令为:":%s/o/O/g"
指定行字符替换命令:冒号+行号1+行号2+s/原字符/新字符/g,如,将3到5行所有的小写x替换为大写X,命令为":3,5s/x/X/g"
显示行号命令:"冒号+set+nu"命令
取消行号:"冒号+set + nonu"
文本默认打开是没有行号的,要使行号默认显示,需要修改配置文件如下:
1.打开vim配置文件命令:vim /etc/vimrc
2.输入shift+g进入最后一行,按小写o,下最下面添加 "set nu" 文本,
3.回到正常模式,按esc键
4.保存配置文件,输入:wq回车

四、可视化模式(Visual-mode)
三种进入可视化模式的方式:
v 字符可视化模式
V 行可视化模式
ctrl+v 块可视化模式
配合d 和 I(大写i)命令可以进行块的便利操作