(一)vi/vim是什么?
Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字编辑软件就能够轻松地修改系统的各种配置了,非常方便。vi就是一种功能强大的文本编辑器,而vim则是高级版的vi,不但可以用不同颜色显示文字内容,还能进行诸如shell脚本、C语言程序编辑等功能,可以作为程序编辑器。
(二)为什么要学习vi/vim?
首先所有的Linux发行版系统上都会默认内置vi编辑器,而不一定带有其他文本编辑器,非常通用;其次,很多软件的编辑接口都会默认调用vi;第三,vi具有程序编辑的能力;最后,vi程序简单,编辑速度相当快速。
(三)vi的三种模式及各个模式之间的转换关系
(四)一般模式常用操作【h(或向左方向键)】光标左移一个字符
【h(或向左方向键)】光标左移一个字符
【j(或向下方向键)】光标下移一个字符
【k(或向上方向键)】光标上移一个字符
【l(或向右方向键)】光标右移一个字符
【[Ctrl]+f】屏幕向下移动一页(相当于PageDown键)
【[Ctrl]+b】屏幕向上移动一页(相当于PageUp键)
【[0]或[Home]】光标移动到当前行的最前面
【[$]或[End]】光标移动到当前行的末尾
【G】光标移动到文件的最后一行(第一个字符处)
【nG】n为数字(下同),移动到当前文件中第n行
【gg】移动到文件的第一行,相当于"1G"
【n[Enter]】光标向下移动n行
【/word】在文件中查找内容为word的字符串(向下查找)
【?word】在文件中查找内容为word的字符串(向上查找)
【[n]】表示重复查找动作,即查找下一个
【[N]】反向查找下一个
【:n1,n2s/word1/word2/g】n1、n2为数字,在第n1行到第n2行之间查找word1字符串,并将其替换成word2
【:1,】从第一行(第行同理)到最后一行查找注册,并将其替换成【s/word1/word2/g】从第一行(第n行同理)到最后一行查找word1注册,并将其替换成word2【:1,s/word1/word2/gc】功能同上,只不过每次替换时都会让用户确认
【x,X】x为向后删除一个字符,相当于[Delete],X为向前删除一个字符,相当于[Backspace]
【dd】删除光标所在的一整行
【ndd】删除光标所在的向下n行
【yy】复制光标所在的那一行
【nyy】复制光标所在的向下n行
【p,P】p为将已经复制的数据在光标下一行粘贴;P为将已经复制的数据在光标上一行粘贴
【u】撤消上一个操作
【[Ctrl]+r】多次撤消
【.】这是小数点键,重复上一个操作
(五)一般模式切换到编辑模式的操作1、进入插入模式(6个命令)
【i】从目前光标所在处插入
【I】从目前光标
【a】从当前光标所在的下一个字符处开始插入
【A】从光标所在行的最后一个字符处开始插入
【o】英文小写字母o,在目前光标所在行的下一行处插入新的一行并开始插入
【O】英文大写字母O,在目前光标所在行的上一行处插入新的一行并开始插入
2、进入替换模式(2个命令)
【r】只会替换光标所在的那一个字符一次
【R】会一直替换光标所在字符,直到按下[ESC]键为止
【[ESC]】退出编辑模式回到一般模式
(六)一般模式切换到命令行模式【:w】保存文件
【:w!】若文件为只读,强制保存文件
【:q】离开vi
【:q!】不保存强制离开vi
【:wq】保存后离开
【:wq!】强制保存后离开
【:!command】暂时离开vi到命令行下执行一个命令后的显示结果
【:setnu】显示行号
【:setnonu】取消显示行号
【:wnewfile】另存为
(七)文件恢复模式【[O]penRead-Only】以只读方式打开文件
【[E]ditanyway】用正常方式打开文件,不会载入暂存文件内容
【[R]ecover】加载暂存文件内容
【[D]eleteit】用正常方式打开文件并删除暂存文件
【[Q]uit】按下q就离开vi,不进行其他操作
【[A]bort】与quit功能类似
(八)块选择(一般模式下用)【v,V】v:将光标经过的地方反白选择;V:将光标经过的行反白选择
【[Ctrl]+v】块选择,可用长方形的方式选择文本
【y】将反白的地方复制到剪贴板
【d】将反白的内容删除
(九)vim配置文件vim的配置文件为/etc/vimrc,但一般不建议直接修改这个文件,而是在用户根目录下创建一个新的隐藏文件:
vim~/.vimrc
然后编辑这个文件,常用的配置如下:
"双引号后面的内容为注释
setnu"显示行号
sethlsearch"查找的字符串反白显示
setbackspace=2"可随时用退格键进行删除
setautoindent"自动缩排
setruler"在最下方一行显示状态
setshowmode"在左下角显示模式
setbg=dark"显示不同的底色,还可以为light
syntaxon"语法检验,颜色显示
目前博主也正在学习Linux系统,但感觉操作命令比较难记,在此查找到了很多关于vim的操作命令,为以后的复习做好准备!