首先 所有linux like系统 包括mac 都会内置vi文本编辑器 而vim可以视为vi的高级版本,下面我来介绍一下vim的三种模式以及常用的快捷键,,
vim分为三种模式,
- 一般模式
- 编辑模式
- 命令行模式
以vim命令打开一个文件就直接进入了一般模式,在这个模式中,可以移动光标,可以删除复制粘贴,,但无法编辑文件内容
在一般模式中按下 i l o O a A r R 可以进入编辑模式,编辑模式通过esc键可以回到一般模式
在一般模式下输入 : / ?三个字符中的任意一个,就可以进入命令行模式,这时光标会移到最下面一行等待输入,读取保存离开等操作在此模式下完成
下面介绍下vim常用的快捷键
一般模式下
- ctrl+f :屏幕向下移动一页
- ctrl+b:屏幕向上移动一页
- (零)0 或 Home : 光标移动到这一行最前面字符处
- $或End:光标移动到这一行最后面字符处
- H:光标移动到屏幕最上方那一行的第一个字符处
- M:光标移动到这个屏幕的中央那一行的第一个字符处
- L:光标移动到这个屏幕的最下方那一行的第一个字符
- G: 移动到这个文件的最后一行
- gg:移动到这个文件的第一行( 相当于1G)
- /word: 向下寻找一个字符串名称为word的字符串
- :n1,n2s/word1/word2/g: n1和n2为数字。在第n1和n2行之间寻找word1这个字符串,并将该字符串替换为word2
- :1,$s/word1/word2/g: 从第一行到最后一行查找word1字符串,并将该字符串替换为word2
- :1,$s/word1/word2/gc: 从第一行到最后一行查找word1字符串,并将该字符串替换为word2,且在替换前显示提示字符给用户确认是否真的替换
- x X: x为向后删除一个字符(delete),X为向前删除一个字符(backspace)
- nx xX: 向前向后删除n个字符
- dd:删除光标所在那一整行
- ndd: 删除光标所在的向下n行,
- yy: 复制光标所在的那一行
- nyy: 复制光标所在的向下n行
- p P: p为将复制的数据在光标所在的下一行粘贴,P为将复制的数据在光标所在的上一行粘贴
- u: 还原前一个操作
- ctrl+r: 重复前一个操作
- .: 重复前一个操作
命令行模式
- :w 将编辑的数据保存
- :w! 将编辑的数据强制写入,
- :q 离开
- :q! 强制离开不保存
- :wq 保存后离开
- ZZ 若文件没有改动,则不保存离开,若文件有改动,保存后离开
- :set nu 显示行号
- :set nonu 取消显示行号
一般模式切换到编辑模式可用案件说明
- i I: 进入插入模式, i为从当前光标所在处进入编辑模式,,I为从当前光标所在行的第一个非空格处进入编辑模式
- a A: 进入插入模式, a为从当前光标所在位置的下一个字符处进入编辑模式,A为从当前光标所在行的最后一个字符处进入编辑模式
- o O: 进入插入模式, o为在目前光标所在行的下一行处插入新的一行,O为从当前光标所在行的上一行插入新的一行
- r R: 进入替换模式 ,r为替换光标所在位置处的字符一次,R会一直替换光标所在位置处的字符,直到按下esc键
可供大家使用vim时进行查阅
网友评论